Figure 4.7. The CMOS standard cell family used in the design of the silicon version of the RISC/MIPS processors within the "MIPS for the Star Wars" project.

 

Figure 4.7. The CMOS standard cell family used in the design of the silicon version of the RISC/MIPS processors within the "MIPS for the Star Wars" project (continued).

 

Figure 4.7. The CMOS standard cell family used in the design of the silicon version of the RISC/MIPS processors within the "MIPS for the Star Wars" project (continued).

 

 

Input A:

Rise delay: 117 ps + 0,26 ps/fF

Fall delay: 95 ps + 0,30 ps/fF

Rise time: 117 ps + 0,57 ps/fF

Fall time: 217 ps + 0,60 ps/fF

 

Input B:

Rise delay: 198 ps + 0,26 ps/fF

Fall delay: 100 ps + 0,34 ps/fF

Rise time: 242 ps + 0,59 ps/fF

Fall time: 223 ps + 0,61 ps/fF

 

VDD = 2 V

Power: 610 mW

 

Pin capacitance:

Pin Q: 1 fF

Pin A: 150 fF

Pin B: 150 fF

 

a)

 

Figure 4.8.a. The GaAs E/D-MESFET standard cell family: (a) a typical standard cell from the GaAs E/D-MESFET family of standard cells used in the design of the GaAs version of the RISC/MIPS processor within the "MIPS for Star Wars" project; (b) a review of various standard cells from the GaAs E/D-MESFET family, as well as their complexities, expressed in transistor count.

 

Standard Cell Overview

Cell
number

Cell
description

Transistor
count

4010

two-input NAND

6

4020

two-input AND, two-input NOR

10

4030

two-input AND, three-input NOR

14

4040

two-input AND, four-input NOR

18

4050

two-input AND, five-input NOR

22

4100

invertor

1

4110

two-input AND, two-input NOR

8

4120

two-input AND, three-input NOR

12

4130

two-input AND, four-input NOR

16

4140

two-input AND, five-input NOR

20

4200

two-input NOR

6

4210

two-input AND, three-input NOR

10

4220

two-input AND, four-input NOR

14

4230

two-input AND, five-input NOR

18

4300

three-input NOR

8

4310

two-input AND, four-input NOR

12

4320

two-input AND, five-input NOR

16

4330

four-input NOR

10

4410

two-input AND, five-input NOR

14

4500

five-input NOR

12

4700

latch

14

4710

latch with RESET

22

4720

latch with SET

20

4800

MSFF

22

4810

MSFF with asynchronous RESET

25

4820

MSFF with asynchronous SET

23

4830

MSFF with synchronous RESET

24

4840

MSFF with synchronous SET

22

8100

ECL® E/D input pad

7

8200

E/D® ECL output pad

6

 

b)

 

Figure 4.8.b. The GaAs E/D-MESFET standard cell family: (a) a typical standard cell from the GaAs E/D-MESFET family of standard cells used in the design of the GaAs version of the RISC/MIPS processor within the "MIPS for Star Wars" project; (b) a review of various standard cells from the GaAs E/D-MESFET family, as well as their complexities, expressed in transistor count.

 

 

Figure 4.9. Internal structure of some popular PL VLSI chips manufactured by Altera.

a) EPM5016

 

 

Figure 4.9. (continued) Internal structure of some popular PL VLSI chips manufactured by Altera.

b) EPM5032

 

 

Figure 4.9. (continued) Internal structure of some popular PL VLSI chips manufactured by Altera.

c) EPM5064

 

 

Figure 4.9. (continued) Internal structure of some popular PL VLSI chips manufactured by Altera.

d) EPM5128

 

a)

 

Figure 4.10. Internal structure of some popular PL VLSI chips manufactured by Xilinx.

a) general structure of the reconfigurable cell array.

 

b)

c)

 

Figure 4.10 (continued). Internal structure of some popular PL VLSI chips manufactured by Xilinx.

b) internal structure of the reconfigurable logic block; c) internal structure of the input/output block.

 

d)

Figure 4.10 (continued). Internal structure of some popular PL VLSI chips manufactured by Xilinx.

d) general purpose interconnect.

 

e)

Figure 4.10 (continued). Internal structure of some popular PL VLSI chips manufactured by Xilinx.

e) long line interconnect.

 

 

Editor: Will Tracz, Loral Federal Systems, MD 0210, Owego, NY 13827; Internet, tracz@lfs.loral.com

 "Any clod can have the
facts, but having
opinions is
an art."

Charles McCabe,
San Francisco Chronicle

 

Ten lessons learned from a RISC design

Lessons can be learned anywhere on earth, and we’ve accumulated a few from our international project— a 64-bit RISC processor design using silicon compilation (with 2.5 million transistors) that took two years to complete. Project teams were located on three continents: a US company provided the hardware description language; a European group (the two of us) was responsible for generating the HDL-based model that correctly described all signals on all pins for each instruction and every operational mode; and a Japanese company generated over 10 Mbytes of tests. Our team’s task was then to successfully pass these tests, after which another US company did the silicon compilation. Finally, another Japanese company did the fabrication. You can imagine the possibilities for complexity! Here are a few of the many lessons we learned.

Lesson #1: It’s tough for just one person to understand everything. A silicon compiler’s essential value is that it enables one person to fully understand a relatively complex design task; however, it’s extremely difficult for one person to manage every detail. In our case, the details were all signals on all pins for every instruction executed in each operational mode. It’s important that future HDL extensions contain language constructs to efficiently express such details!

Lesson #2: Coding rules for silicon compilation are underdeveloped. One nice thing about HDLs is that they let you adequately exploit the full parallelism at the lowest hardware levels for efficient programming. However, current silicon compilers get "confused" with too much parallelism, so the HDL programmer must serialize the description, which negatively affects programmer productivity. The solution? Develop design rules characterized by maximum parallelism yet without negative effects on synthesis efficiency!

Lesson #3: Don’t let silicon compiler warnings get you down. We’ve noticed that many silicon compilers generate correlated warnings. Consequently, a huge number of warnings results in a mere handful of coding rule violations. Therefore, the generated warnings must be orthogonalized!

Lesson #4: Be careful when naming variables. A silicon compiler shouldn’t specify how variable names are created. For example, our register variable names had to start with "r_." This can be confusing, especially of required of the HDL programmers after they’ve mostly completed their task.

Lesson #5: The environment keeps changing. The silicon compiler was fully developed by the time we started our work, but the programming rules that enabled synthesis were not. Consequently, creating rules was a trial-and-error experience. Also, the silicon-compilation design process is still lengthy, so the project requirements are likely to change during the design process. Nothing new!

Lesson #6: Testing is still the bottleneck. The first 90 percent of the project—design—was completed in six months, while the remaining 10 percent—testing—needed another 18 months!

Lesson #7: Beware the NIH problems. People who work in high tech tend to think very highly of themselves, and that characteristic caused some problems of the NIH ("not invented here") variety. When a test failed, entirely too much time was spent trying to determine who made the error rather than getting on with fixing it. The typical reaction was always to blame someone else for the error.

Lesson #8: Working on three continents is both pleasure and pain. If the phone woke you up in the early morning, you knew the call was from Japan. If the phone woke you up late at night, you knew the call was from the USA. After awhile, you learned the best time to send e-mail to get a prompt response. Cultural differences, although a source of fun, can provoke misunderstandings that create hard feelings.

Lesson #9: Time to market is still an issue. A major driver of silicon compiler development is fast time to market. However, the goal has not yet been met to accelerate very sophisticated processor-logic designs adequately. There’s lots of research room for new methodologies in the over-one-million-transistor arena.

Lesson #10: We’re always more clever after the fact! As the saying goes, "hindsight is 20-20." Looking back, it’s obvious that better planning up front would have eliminated many problems (although, unfortunately, none of the above!). Better planning would definitely have reduced the 18 months it took to eliminate the last 10 percent of errors. Also, we’re all now older and wiser, with two years’ more experience!

OUR PROCESSOR DESIGN PROJECT—with all its lessons learned—was one of life’s special experiences. During the two long years of work, one of the project team members passed away, and another one received a beautiful new baby. Sometimes, life resembles engineering so much!

Veljko Milutinovic and Zvezdan Petkovic

University of Belgrade

emilutiv@ubbg.etf.rs

 

 

 

 

 

Figure 5.1. AN EXAMPLE FOR THE PRACTICAL WORK USING THE SC VLSI METHODOLOGY: schematic diagram of a digital modulator for a modem with the FSK modulation, and the data transfer rate of 1200 bps, according to the CCITT standard. Input signals, FQ, S103, and S105, and output signals, FSKOUT and S106, are defined by the CCITT standard. The complete understanding of the functionality of the diagram is not a prerequisite for the comprehension of the following text.