What engineers at Apple and Intel do in the office: a career-oriented online course in modern microelectronics for students

    Recently, a free online course in three parts entitled “How the creators of smart nanochips work” has recently been released ( 1 , 2 , 3 ). It is intended for career guidance of schoolchildren and is characterized by maximum specificity: this is how the distribution of work in the microchip design team looks like, here the development is built on such design concepts at the register transfer level, and these algorithms are used to determine how much megahertz the designed processor will work for a computer or automotive electronics.

    In addition to theoretical career guidance, the course can be used to select students for practical summer schools on FPGAs and processor design. Such a school is planned this year in Zelenograd, its prototype was tested at the Summer School for Young Programmers in Novosibirsk and at the Electronics Week for schoolchildren in Kiev the year before last. You can also try to make a hackathon on hardware-implemented neural networks and hardware implementation of games with output to a VGA display (more on that later in the post).



    Briefly about what is included in each of the three modules - “From the transistor to the microcircuit”, “The logical side of digital circuitry” and “The physical side of digital circuitry”.

    The course "How do the creators of smart nanochips work" starts from absolute zero, therefore its first part, "From the transistor to the microcircuit," largely repeats other electronic materials for schoolchildren that have been created in the last 50 years - what is a transistor, logic elements, binary numbers and triggers. The concept of the D-flip-flop inside the modern iPhone remains the same as in the 1986 Quantum magazine. Transistors decreased a thousand times, but their essence has not changed.

    The only block of information that was not in the previous courses is about the so-called standard cells, on the technologies of which the vast majority of modern specialized microcircuits are built. They look like this:



    Try to answer the question from testing below, and if you know the answer, then you can skip the first module of the course:
    Why are standard cells of modern microchips (ASIC standard cells) called standard?
    1. Oh, I know! This is because they implement the standard logical functions AND, OR, NOT
    2. Transistor elements in standard cells have a standard chemical composition
    3. Standard cells operate at standard clock speed
    4. They have a standard height (dimension on the area), which simplifies the supply of power to them and their automatic connection with each other
    5. The structure of the standard cells was once standardized by some European standards committee.

    Correct answer:

    Hidden text
    4. Standard cells (ASIC standard cells) have a standard height (dimension on the area), which simplifies the supply of power to them and their automatic connection with each other



    If you do not know, you can go through the first module of the course - "From the transistor to the microcircuit." Here is its content:



    If most of the first module of the course “How do the creators of smart nanochips work” talks about the same things that have been in popular texts for schoolchildren since the 1970s, then in the second part, “The logical side of digital circuitry”, we enter the area in which there was no Quantum magazine, and which, in general, was abandoned in Russian education due to the collapse of the USSR. We are talking about the so-called RTL-to-GDSII route, methods for designing a plan for placing billions of transistors and chip tracks based on compilation / synthesis of code in the hardware description languages ​​Verilog and VHDL. The failure in this area must be overcome, starting with the level of advanced students. Otherwise, there are no truly Russian iPhones, robots, or self-driving cars.



    In recent years, Russia has spurred the popularization of digital circuit design by synthesizing hardware descriptions from languages, including due to the release in Russian of a free (electronic version) textbook by David Harris and Sarah Harris “Digital circuitry and computer architecture” . Posts on Habré about this textbook received more than 300 thousand views, and downloads twice overwhelmed the British site Imagination Technologies. Recently a final revised version of the tutorial was released, which you can download from the link from the MIPS website . True, the link works only under Windows, but on the Mac and under Linux it is buggy. If you have problems with it, you can download the same version from here . Or buy a paper book from DMK Press on Ozone or in the Labyrinth.



    The “Logical side of digital circuitry” module of the course “How do the creators of smart nanochips work” uses the example of a “smiling snail” from Harris. A snail is a state machine that recognizes sequences of zeros and ones. The course understands the source code of the “snail” machine in the Verilog hardware description language, and introduces the concepts of state machine state diagrams and time signal diagrams. After this, an electronic circuit synthesized from the description is shown, with logic elements and and D-triggers for storing the state of the “snail” state machine.





    Based on the “snail” example, schoolchildren on hackathons can synthesize various “code locks” for FPGA cards. In the exam for the course "How do the creators of smart nanochips work" there is a question about the state diagram of the state machine of the so-called "Chinese room" - a popular example from the field of artificial intelligence. Here is a diagram of a simple state machine for dialogue with Chinese characters. If you give him a combination of several hieroglyphs “tree” and “bear”, with the following hieroglyphs “science”, the machine will give out a sequence of hieroglyphs “Siberia” - this is an example that was born during a seminar for schoolchildren in Novosibirsk academic campus:



    The third part, “The Physical Side of Digital Circuitry”, describes how a graph of logic elements synthesized in the second part is laid out on a microcircuit and turned into a GDSII drawing which is sent to the factory where the microcircuits are baked. This part also discusses placement and tracing algorithms that will be of interest to mathematically oriented students. Research in the field of automation of designing microcircuits is a popular area among former winners of math contests.



    Here's what the chip design looks like after placement and tracing using Synopsys IC Compiler:



    But this elegant fractal structure is a tree of a clock signal inside the chip, built so that the clock signal arrives at all D-triggers at about the same time. The width of the “branches” of this tree varies from thick to thin metal compounds on the microcircuit in order to satisfy the physical limitations of copper conductors at the nanometer level of semiconductor technology:



    And here is an illustration of the so-called wave tracing algorithm (in English Maze Routing - “Searching for paths in the maze”). This algorithm was used in early design automation programs to connect the logical elements of a circuit. The wave tracing algorithm is so simple that a capable high school student can write it in C, Python, or Java. This is a useful exercise for those who are going to write much more complex algorithms in the future, for example, for future three-dimensional chips:



    What can students do after mastering the concepts of designing digital circuits on Verilog? Exercises in the simulator or with flashing lights on the FPGA board, although necessary, are quite annoying, and the design of simple processors and neural calculators is interesting only to a small percentage of students who decide to master computer architecture. Fortunately, the exercises that are possible for students are not limited to these two areas.

    Just two months ago, the book Designing Video Game Hardware in Verilog by Steven Hugg was published, which describes the design of game schemes on Verilog, with the implementation in the FPGA connected to the VGA display. We are talking about video games of the 1970s and 1980s, with the generation of a scan, a frame buffer, sprites. Atari ping pong, space wars, tanchiki. Slot machines for these games were first assembled back in the 1970s on microcircuits of a small degree of integration, then on PAL and microcontrollers, including Motorola 6502, which was used in the first by Apple. Steven Hagg’s book also discusses the hardware implementation of sprites familiar to Soviet programmers and gamers in the second half of the 1980s using the Texas Instruments TMS9918 video processor, which was installed in Japanese Yamaha MSX computers imported at that time into Soviet schools.

    Hagg’s book is useful not only and not so much to nostalgic cranks. This is an excellent set of tasks for modern students and schoolchildren who are starting to study electronics. Since the tasks are old, but here the technologies - Verilog, logic synthesis, FPGA prototyping - are new, the same ones that are now being studied in the 2018-2019 academic year at MIT in the course of 6.111 . Without simple exercises with Verilog and FPGA, the engineers who now sit in Santa Clara at Intel, NVidia and AMD, in Cupertino at Apple and other electronic companies would not have grown up.





    To summarize. It would be nice if now a certain number of school and university teachers would check out the course “How the creators of smart nanochips work”, after which they would send interested students to it. Then, for schoolchildren who will receive a certificate of this course, you can invite them to a practical seminar with FPGA boards (some of which will be distributed as prizes for successful projects). Such seminars are now being discussed in Zelenograd, Moscow, there is also interest in Sochi, Minsk and other places. In the long run, Russia will grow a community of chip developers that has developed in Silicon Valley, Japan, Taiwan, South Korea, the UK, and is now taking shape in Shanghai and other places. This is something that should exist in every large technically advanced country, and in Russia there are enough traditions in mathematics,

    Only registered users can participate in the survey. Please come in.

    What are you most interested in?

    • 43% General career guidance in the design of digital electronics 34
    • 37.9% The logical side of digital circuitry 30
    • 41.7% Physical side of digital circuitry 33
    • 27.8% Design Automation Algorithms 22
    • 21.5% Graphic games on FPGAs 17
    • 11.3% I am a teacher and am ready to take a course to test it 9
    • 22.7% I am a schoolboy or student and am ready to take a course to come to practical classes with FPGA 18
    • 55.6% I am interested in the topic of digital circuitry as a hobby 44

    Also popular now: