datasheets.com EBN.com EDN.com EETimes.com Embedded.com PlanetAnalog.com TechOnline.com
Events
UBM Tech
UBM Tech

Programmable Logic DesignLine Blog

#### Comment

DP23

8/9/2011 2:33 PM EDT

3 Li = LVDS input
21 Sc = Score (timing)
41 Nb = Nibble
50 Sn ...

More...

Max the Magnificent

8/9/2011 10:03 AM EDT

Yup -- Jan Gray pointed that out also -- I will make the change -- Max

More...

# The Periodic Table of Programmable Logic – Rev #1

## 7/28/2011 4:57 PM EDT

Wow! Just yesterday as I pen these words I posted my blog suggesting that we might create a Periodic Table of Programmable Logic and I’ve been overwhelmed by the response (Click Here to see the original blog).

First of all, Jan Gray leapt into action with offerings for most of the table (see the comments associated with the original blog). Then jrehgtkaerhu offered a few suggestions. And later FlyByPC came up with another long list (although some of these were really useful, many were more general electronic definitions … perhaps I’ll end up creating a bunch of these tables over time).

So, what I’ve done is to go through all of the offerings thus far – and add a few of my own – and to generate a combined list as shown toward the end of this blog.

You would not believe how long it’s taken me to create a large version of this table containing all of the data thus far. You can see the current state of the full up version by clicking the following link:

www.clivemaxfield.com/area51/periodic-table-prog-logic-v1.jpg

Note that I’m not 100% happy about all of the items we have thus far. For example 8 = O = Output and 53 = I = Input are a little tame (but the only thing I could come up with was 8 = O = “Oh My Gosh!”). Also 24 = Cr = Achronix is a bit of a push, but I can’t think of anything better.

As you will see, there are still quite a few blank spaces. What about “Bah, Humbug!” for 56 = Ba? And I really think we can do better than 64 = Gd = Good. Also, although Xilinx came out of this quite well insofar as their FPGA families got a lot of mentions, we don’t actually have one for their company name (any ideas?).

Anyway, it would be great if you could take the time to check out the following list. Can you think of anything to fill in the blanks? Also note that we aren’t locked into any of the existing items – if you can think of a better entry for any of these please let me know by adding a comment to the bottom of this blog (please, Please, PLEASE give the element number and symbol along with your proposed definition … if you just say something like “U = You Idiot” it can take me ages to find the “U” box in the table).

OK, the current list is as follows:

1 H = HardCopy
2 He "...doesn't pass the laugh test"
3 Li = ???
4 Be = Bit Error Rate
5 B = Byte
6 C = CPLD
7 N = No NRE
8 O = Output
9 F = FPGA
10 Ne = Negative Edge
11 Na = NAND
12 Mg = Multi-Gigabit Transceiver
13 Al = Altera
14 Si = SiliconBlue
15 P = PSoC
16 S = Slack
17 Cl = Configurable Logic
18 Ar = Artix
19 k = Kintex
20 Ca = Carry Chain
21 Sc = ???
22 Ti = Timing Analysis
23 V = Virtex
24 Cr = Achronix
25 Mn = ???
26 Fe = Feedback
27 Co = Core
28 Ni = Nios
29 Cu = ???
30 Zn = ZYNQ
31 Ga = Genetic Algorithm
32 Ge = Gigabit Ethernet
33 As = Asynchronous
34 Se = SERDES
35 Br = Block RAM
36 Kr = Kernigan and Richie
38 Sr = hift Register
39 Y = ???
40 Zr = ???
41 Nb = ???
42 Mo = Module
43 Tc = Timing Closure
44 Ru = ???
46 Pd = Pipelined Design
47 Ag = QuickSilver (RIP)
48 Cd = Clock Divider
49 In = Intel FlexLogic (RIP)
50 Sn = ???
51 Sb = ???
52 Te = Test
53 I = Input
54 Xe = ???
55 Cs = Constraint
56 Ba = ???
57 La = Lattice Semiconductor
58 Ce = Clock Enable
59 Pr = Partial Reconfiguration
60 Nd = Node
61 Pm = PALASM
62 Sm = Simulation
63 Eu = Emulation
64 Gd = Good
65 Tb = Terabits Per Second
66 Dy = Dynamic Power
67 Ho = Hold Time
68 Er = Error Correction
69 Tm = Technology Mapping
70 Tb = Yottabyte
71 Lu = Lookup Table
72 Hf = Hierarchical Floorplanning
73 Ta = Tabula
74 W = ???
75 Re = Reconfigurable Computing
76 Os = Operating System
77 Ir = Input Register
78 Pt = ???
79 Au = ???
80 Hg = ???
81 TI = ???
82 Pb = PicoBlaze
83 Bi = Bitstream
84 Po = Port
85 At = Atmel
86 Rn = Random
87 Fr = Freeman, Ross
88 Ra = RapidIO
89 Ac = Actel (now Microsemi)
90 Th = Throughput
91 Pa = ???
92 U = ???
93 Np = ???
94 Pu = ???
95 Am = Ambric (RIP)
96 Cm = Clock Manager
97 Bk = Block
98 Cf = Configuration File
99 Es = ???
100 Fm = ???
101 Md = ???
102 No = ???
103 Lr = ???
104 Rf = Register File
105 Db = Double Data Rate
107 Bh = ???
108 Hs = ???
109 Mt = ???
110 Ds = Digital Signal Processing
111 Rg = Register

Any suggestions will be very much appreciated…

If you found this article to be of interest, visit Programmable Logic Designline where – in addition to my blogs on all sorts of "stuff" – you will find the latest and greatest design, technology, product, and news articles with regard to programmable logic devices of every flavor and size (FPGAs, CPLDs, CSSPs, PSoCs...).

Also, you can obtain a highlights update delivered directly to your inbox by signing up for my weekly newsletter – just Click Here to request this newsletter using the Manage Newsletters tab (if you aren't already a member you'll be asked to register, but it's free and painless so don't let that stop you [grin]).

Max the Magnificent

7/28/2011 5:30 PM EDT

Seriously, you have no idea how many hours I put into creating this big chart ... but when we are finished it will look fantastic printed out onto a 17" x 11" glossy sheet...

Max the Magnificent

7/28/2011 5:33 PM EDT

Thinking about it, 10 = Ne = Negative Edge is a little uninspiring ... surely we can come up with some better names if we all put our heads together...

Max the Magnificent

7/28/2011 6:18 PM EDT

Narinder Lall from eASIC just emailed me to say:

"Nice idea!! I would omit the product names though and make it more generic to FPGAs."

Narinder also offered the following suggestions:

Bh – Bit hashing
Cr – Cost Reduction
Cu – Configuration RAM Upset
Hs – High Speed IO
Li – Line Rate
Sn – Signal Processing?
Sb – Serial bits
Hg – HiGiG
Xe – Xcell Journal

Jan.Gray

7/28/2011 6:25 PM EDT

One quibble with the updated draft table -- I think Hg (not Ag) should be "Quicksilver (RIP)". Hg denotes Mercury a.k.a. quicksilver a.k.a hydrargyrum, liquid silver, the ancients' name for Mercury.

Max the Magnificent

7/29/2011 10:12 AM EDT

Great Point -- thanks Jan -- I will make this change in the next revision -- Max

Evgeni

7/29/2011 1:37 AM EDT

Li = Low impedance
Sc = Severe congestion
Cu = Capacitive undershoot (not sure what it means :)
Y = Yield
Zr = Zero resistance
Sn = several nibbles
Sb = Several bits
W = Wavelet
Mt = Meets timing

Max the Magnificent

7/29/2011 10:14 AM EDT

Y = Yield was my knee-jerk reaction, but that's not really something we (users) think about in terms of FPGAs is it?

Evgeni

7/29/2011 2:08 AM EDT

Posting again, this time with line breaks and some additions:
Li = Low impedance
Sc = Severe congestion
Y = Yield
Zr = Zero resistance
Sn = Signal to noise
Sb = Several bits
W = Wavelet/Wafer
Mt = Meets timing
Fm = Frequency modulation
Md = Multiple drivers
No = Nonlinear optimization
Lr = Linear regulator
Es = Embedded software
Pa = Placement algorithm
U = Utilization/Undershoot
Pu = phase unbalance

Max the Magnificent

7/29/2011 10:16 AM EDT

Good suggestions, but some of these are more general electrical things like "Zero Resistance" ... we're trying to focus this table on programmable logic -- maybe I'll kick off a more general electrical / electronic table when we've finished this one...

SZA

8/1/2011 6:38 AM EDT

Its amazing, I wonder how such creative things come in your (Max) mind [grin].
Here my few guesses.

3- LI = XiLInx
81- TI = TIer Logic (RIP)
25- Mn = MeNta (eFPGA IP)
50- Sn = SyNplicity (now synopsys)
51- Sb = Switch Box
79- Au = AboUnd Logic (RIP)
101- Md = Modular Design
109- Mt = Max the Magnificent :)

Max the Magnificent

8/1/2011 9:55 AM EDT

These are real good ones. I'll add them on the next spin. I'd also like to work in "MathStar (RIP)" -- they deserve some mention -- also "Element CXI" which is still out there ... any suggestions?

SZA

8/1/2011 10:56 AM EDT

Oh yea broadening the scope to non-FPGA programmable companies will bring many new names (tragically most of them were/are always on edge of RIP due to BIG-2!, it is good place to rember them).

Few new quick suggesions.
54- Xe = EliXEnt (now panasonic i guess)
14- Si = SIlicon Hive/SIliconBlue
16- S = Stream Processors Inc
52- Te = TilEra
109 - Mt = MaThstar (if not Max the Magnificent)
15- P = PicoChip/Pact XPP
39- Y = PluralitY (Hypercore Processor)
103- Lr = LeopaRd Logic (RIP)
27- Co = ReCOre

I will also like to see ElementCXI, seems its hard to fit, other than that i guess i am nearly running out of Vocabulary :)

Max the Magnificent

8/1/2011 11:25 AM EDT

Re your comment about this being a good place to remember the companies that have fallen by the wayside -- that's what I was thinking -- I don't want to cover all of them (I don't want a table filled with RIPs), but I knew some of the folks at QuickSilver and Ambric and MathStar...

deepak@tejas

8/4/2011 2:42 AM EDT

Sc = Soft CDR

deepak@tejas

8/4/2011 2:56 AM EDT

W - Watchdog timer

deepak@tejas

8/4/2011 2:59 AM EDT

U - Utilization

deepak@tejas

8/4/2011 3:01 AM EDT

Pu - Power Up

deepak@tejas

8/4/2011 3:05 AM EDT

Y - Yield

Loftman

8/4/2011 4:21 AM EDT

2 He = Hex
3 Li = Literal Input (a Calma GDSII input prompt)
7 N = NOR
8 0 = Octal
24 Cr = Cryptography
39 Y = Y doesn't it work ?
40 Zr = Zero return (bit too software ?)
41 Nb = Not Broken
53 I = Intermittent contact
54 Xe = Cross Engineer
56 Ba = Backup
64 Gd = Ground
79 Au = Automatic Update
81 Ti = Text Input (another GDSII input prompt)
94 Pu = Pull Up
102 No = Normally Open
108 Hs = High Speed

Roger

deepak@tejas

8/4/2011 5:03 AM EDT

W - Wrap Burst

deepak@tejas

8/4/2011 5:08 AM EDT

Pa - Partial Reconfiguration

deepak@tejas

8/4/2011 5:09 AM EDT

W - WebPack

deepak@tejas

8/4/2011 5:17 AM EDT

deepak@tejas

8/4/2011 5:19 AM EDT

Sc - Schematic

deepak@tejas

8/4/2011 6:23 AM EDT

Ba - Bandwidth

QuitKidding

8/4/2011 9:33 AM EDT

41 = Nb = Nibble

huntergator

8/4/2011 9:52 AM EDT

Li = Little-Endian

Max the Magnificent

8/4/2011 1:39 PM EDT

These are GREAT suggestions everyone -- please keep them coming...

one_armed_bandit

8/4/2011 2:51 PM EDT

Just a thought - part of the disconnect is trying to use the chemical mnemonics for a different field. I would suggest just using different ones. (perhaps this violates the letter (ahem) but not the spirit of the attempt.)

The other parts of the table entry, instead of atomic weight, could be transistor count, year and model/part number of first one released, etc:

Mp = Microprocessor, 4004, 1971, 2300

Ny = Nybble - half a byte (note the "y")
By = Byte
Wo = Word (2 bytes)
Hy = Hyckey (4 bytes :^)

Wd = watchdog
Da = DAC
Bc = binary counter

Max the Magnificent

8/4/2011 3:05 PM EDT

I know what you mean -- but I think that's the whole point of it -- to restrict yourself to the familiar chemical mnemonics so the table sort of looks right and to then work your way around any problems

deepak@tejas

8/5/2011 12:08 AM EDT

Hs - Hot Socketing

deepak@tejas

8/5/2011 12:08 AM EDT

Es - Encryption Standard

deepak@tejas

8/5/2011 12:09 AM EDT

deepak@tejas

8/5/2011 12:12 AM EDT

Pa - Package

deepak@tejas

8/5/2011 12:21 AM EDT

Ba - Ball Array

deepak@tejas

8/5/2011 12:25 AM EDT

Li - Local Interconnect

deepak@tejas

8/5/2011 12:25 AM EDT

deepak@tejas

8/5/2011 12:59 AM EDT

Sc - Synchronous Clear

deepak@tejas

8/5/2011 6:20 AM EDT

Sc - Serial Configuration

Max the Magnificent

8/5/2011 10:02 AM EDT

@DeePak -- You don't have to post these one at a time (grin)

Tom_nickname

8/9/2011 3:52 AM EDT

Quicksilver is an actual element (mercury symbol Hg) so shouldn't it get Hg rather than Ag (silver). How about Ag = Algotronix.

Max the Magnificent

8/9/2011 10:03 AM EDT

Yup -- Jan Gray pointed that out also -- I will make the change -- Max

DP23

8/9/2011 2:33 PM EDT

3 Li = LVDS input
21 Sc = Score (timing)
41 Nb = Nibble
50 Sn = Single-node
51 Sb = Single-bit
56 Ba = By area (logic optimization)
78 Pt = Product Term
94 Pu = Pullup
100 Fm = Frame
101 Md = Mode
102 No = Negated output
103 Lr = Low rate