Simplifying microelectronics education labs with Ruby Cherry EDA on AWS
University faculty members and non-profit organizations looking to improve the training experience for the next generation of microelectronics engineers face multiple challenges with the computing environment required, both technical and organizational. In this blog we will review these challenges, and how to solve them using ready-made solutions on AWS and how these solutions can scale to solve other challenges in microelectronics education.
The training environment for learning about Electronic Design Automation (EDA) Computer Aided Design (CAD) tools, requires a special skillset to deploy, configure and optimize. Examples include setting up a CAD environment and configuring remote desktop protocols to enable students to use remote client software installed on on-campus computers to connect remotely to graphical sessions (also called remote desktop sessions) on a Linux server. Since university IT staff need to support multiple faculties with a broad set of workloads, each with its own set of tools, IT staff can’t be expected to specialize in the CAD toolchain. This likely results in an unpleasant experience for students, who find their compute jobs failing or taking too long to complete. Students also have no support from the tool vendor when a tool or a remote session has problems, preventing them from completing their tasks on time. Additionally, with little to no experience using industry CAD tools, universities struggle to take advantage of deeply discounted educational pricing for commercial CAD tools.
Periodic updates to Process Design Kits (PDKs) adds its own set of challenges, as coursework needs to be updated, often requiring support for additional tools on an ongoing basis. Without CAD support, teachers can’t update their coursework, creating a gap between the students’ training and workforce requirements.
Traditionally, each faculty in the university owns its own servers and facilities, avoiding the need to coordinate lab schedules with other faculties. This results in reduced utilization of its computers most of the semester but insufficient compute resources towards the end of the semester when all students need to complete their projects. Students also differ in their needs of between academic years: beginning students usually only need to run processes locally on their remote session, and are normally not compute intensive. Advanced students, however, require more powerful remote graphical session to run their projects, as well as the ability to submit batch jobs to a centralized HPC cluster (which will be idle most of the year). To accommodate both beginning and advanced students, the university compromises somewhere in between, resulting in under sizing for advanced students, while over-sizing for beginning students.
This inefficiency in compute resource utilization has driven some universities to force cost saving actions on to student, for example automatically shutting down idle remote sessions. This results in students not being able to resume work from where they left off, and potential data loss as a result of processes not be able to complete properly.
While these challenges have been around for years, they have been aggravated by the pandemic and remote learning. Not having to stay on campus to get their work done might be a good thing for students, but hundreds of them running remote sessions over the university’s primary internet connection consumes a lot of bandwidth and results in a lagging User Experience for students. However, challenges start a lot earlier than that – a common student / faculty complaint, is how long it takes students to get login credentials at the beginning of the year.
From a security perspective, remote desktop protocols increase the attack surface, allowing another way for malware to spread to the university’s network.
And the last challenge is around inability to access the server. Students get frustrated when they cannot connect to their remote session, whether that’s because of a hardware failure, planned server maintenance or just the university’s limited bandwidth not able to support so many remote desktop connections.
Tackling scenarios with widely varying compute resource requirements, ranging from minimal (no servers used at 4AM) to large scale (100 students submitting jobs the night before a large project is due) is a perfect use case for the elasticity of the cloud. However, a solution needs to also include other components: secure access, user management and shared storage just to name a few.
Ruby Cherry EDA is an APN partner providing CAD and integrated Cloud/CAD solutions for microelectronics in industry and institutions of higher education. Their support for higher education includes both research and coursework, allowing faculty members to better prepare their students for the workforce.
Ruby Cherry EDA developed RC3, the Ruby Cherry CAD Cloud, an integrated Cloud/CAD solution based on the open-source AWS Solution Scale-Out Computing on AWS (SOCA). SOCA is a cloud environment which aims to cater to fabless semiconductor companies developing a product (e.g., where users are active for 9 hours every day, focusing on fastest time to results). RC3 incorporates pre-configured CAD environments for analog, digital, mixed signal and RF industry and research flows or, in a coursework use-case, a student-friendly CAD environment. The “cloud” part of the education implementation is customized for this use case, e.g.: widely varying demand for compute resources, cost-control measures designed with student work-patterns in mind, and a UX designed to optimize the learning experience.
Automated user-management allows students quick-access to the cloud environment. After faculty members provide a list of email addresses, students automatically receive an invite to register, sign an NDA and can immediately launch a remote session. Failed remote sessions can be terminated and replaced using a self-service portal, while student work is stored on a shared storage and is available when the student connects to the new session. Remote sessions are automatically hibernated-when-idle to save the university budget. When sessions are restarted, students can resume working where they left off. The solution runs in the AWS region closest to the university, giving students low-latency access unconstrained by the university’s limited bandwidth. In addition, the modern remote-desktop client used in the solution improves response time and security. With students connecting to a cloud environment instead of the university network, performance is better, and malware can’t spread to the university. Ruby Cherry EDA maintains the integrated Cloud/CAD environment for the university and provides CAD support.
Having a partner specializing in the CAD toolchain and methodology allows universities to become more agile when developing a new course that relies on latest versions of CAD tools, or when updating an old course to new tool versions, as Ruby Cherry EDA maintains the CAD toolchain.
Universities adopting the Ruby Cherry CAD Cloud for Education can avoid investing in compute infrastructure (physical facility, computers and networks) and the operational cost of maintaining them, and instead focus on teaching their students in a modern environment that prepares them for today’s workplace. At the same time, the environment is protected from outside access using a VPN, and students’ Personally Identifiable Information (PII) is managed and protected using Amazon Cognito.
Additional use cases
Some universities also have microelectronic research departments, working to develop the next disruption in the industry. These researchers rely on HPC batch jobs and GPU enabled remote sessions for 3D visualizations. However, researchers also need to use grants wisely and can benefit from the ability to scale up when they need fast results, and scale back down to optimize costs. The scalability of the Ruby Cherry EDA solution for HPC allows researchers to take advantage of special education pricing for EDA tool licenses without overspending on IT infrastructure.
Preparing students for the modern workplace using the latest tools and methodologies while optimizing their learning experiences should be priorities for all institutions of higher education. For microelectronics, with the fast pace of new technologies and the complicated CAD tool required, this is a challenge that can be solved using Ruby Cherry CAD Cloud for Education.