On-line education pioneer Udacity is partnering with Cadence to offer an upcoming free class in functional hardware verification – but Udacity’s overall mission is quite a bit broader than that. Says David Evans, vice president of education at Udacity: “Our mission is to make high-quality higher education available to everyone in the world, and to keep it free.”
It’s an ambitious goal for the young company, which started last year when two artificial intelligence experts – Prof. Sebastian Thune, now Udacity CEO, and Peter Norvig, now Google’s director of research – decided to go on-line with a class they were teaching at Stanford University. It went viral, was picked up by the New York Times, and within a few weeks 160,000 students in over 190 countries had signed up for Udacity’s first class, “Introduction to Artificial Intelligence.”
Today Udacity offers the following classes:
- Beginner courses in computer science, physics, and statistics
- Intermediate courses in algorithms, web development, software testing, programming languages, theoretical computer science, differential equations, software debugging, and “how to build a startup”
- Advanced courses in design of computer programs, artificial intelligence, and applied cryptography
Functional hardware verification will be offered in early 2013 as an advanced course. Other upcoming courses include HTML5 game development, interactive rendering, and introduction to parallel programming.
While the classes are as challenging as traditional university classes, they take advantage of new technology. “Instead of having a traditional lecture style, where the professor is talking at the students, we have a much more interactive, engaging style with exercises, videos, and short explanations,” Evans said. Students generally can’t interact with instructors in real time, as they could in a physical classroom, but Udacity provides discussion forums at which students can get answers from other students or instructors.
Udacity classrooms are “open” 24 hours a day and students can progress at whatever pace they like. They are available to anyone with Internet access. Accreditation is “something we’re working on,” Evans said.
Evans, who is currently on leave from his post as a professor of computer science at the University of Virginia, noted that only a very small fraction of the world’s population can afford to take four years to attend brick-and-mortar universities. “Traditional universities are organized around the same ideas and processes as they were 1,000 years ago,” he said. “Our belief is that by using technology we can make the cost per student really low while delivering a high-quality learning experience.”
So how does Udacity make money? The business model is still under development, but one possibility is through add-on services such as certified testing. Recruiting fees present another possibility. Here, Udacity would identify students who could be valuable to potential employers, and the employers would pay recruiting fees to find them.
Functional Verification Class
So why teach hardware IC verification? This is not, after all, a topic that’s likely to draw 160,000 students in a few weeks. But as I heard at the DVCon conference earlier this year, many chip design companies are struggling to find qualified verification engineers, a job function that requires a combination of hardware and software skills that many university graduates lack.
The verification class is titled Functional Hardware Verification: How to Verify Chips and Eliminate Bugs. It will be taught by Cadence verification experts Axel Scherer and Hannes Froehlich in early 2013. (Scherer is a frequent Cadence blogger, and you can read his post and see a short video about the Udacity class here.) The training will be based on the e Hardware Verification Language, but does not require a knowledge of e up front.
Scherer said that Cadence is offering the class in response to global demands for verification training, and the difficulty in reaching many parts of the world with in-person training. The class can serve design engineers moving into verification, part-time verification engineers who only use directed test, college students, engineers who want to broaden their skill sets, and unemployed engineers looking to get back into the labor market. Students should be familiar with programming in general and have some understanding of object-oriented programming.
Course content will include basic verification environments, adaptable verification environments, verification concepts, functional coverage, data checking and scoreboards, the Universal Verification Methodology, debugging, and environment control and synchronization. The class will leverage automated techniques such as constrained-random test generation.