Programmable Logic DesignLine Blog
Comment
DP23
Max the Magnificent
Yup -- Jan Gray pointed that out also -- I will make the change -- Max
The Periodic Table of Programmable Logic – Rev #1
Clive Maxfield
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
37 Rb = Readback
38 Sr = hift Register
39 Y = ???
40 Zr = ???
41 Nb = ???
42 Mo = Module
43 Tc = Timing Closure
44 Ru = ???
45 Rh = Radiation Hardened
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
106 Sg = Speed Grade
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]).
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
37 Rb = Readback
38 Sr = hift Register
39 Y = ???
40 Zr = ???
41 Nb = ???
42 Mo = Module
43 Tc = Timing Closure
44 Ru = ???
45 Rh = Radiation Hardened
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
106 Sg = Speed Grade
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]).
Navigate to related information



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...
Sign in to Reply
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...
Sign in to Reply
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."
I must admit that I had wondered about this -- what do you think?
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
Sign in to Reply
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.
Sign in to Reply
Max the Magnificent
7/29/2011 10:12 AM EDT
Great Point -- thanks Jan -- I will make this change in the next revision -- Max
Sign in to Reply
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
Sign in to Reply
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?
Sign in to Reply
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
Sign in to Reply
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...
Sign in to Reply
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 :)
Sign in to Reply
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?
Sign in to Reply
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 :)
Sign in to Reply
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...
Sign in to Reply
deepak@tejas
8/4/2011 2:42 AM EDT
Sc = Soft CDR
Sign in to Reply
deepak@tejas
8/4/2011 2:56 AM EDT
W - Watchdog timer
Sign in to Reply
deepak@tejas
8/4/2011 2:59 AM EDT
U - Utilization
Sign in to Reply
deepak@tejas
8/4/2011 3:01 AM EDT
Pu - Power Up
Sign in to Reply
deepak@tejas
8/4/2011 3:05 AM EDT
Y - Yield
Sign in to Reply
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
Sign in to Reply
deepak@tejas
8/4/2011 5:03 AM EDT
W - Wrap Burst
Sign in to Reply
deepak@tejas
8/4/2011 5:08 AM EDT
Pa - Partial Reconfiguration
Sign in to Reply
deepak@tejas
8/4/2011 5:09 AM EDT
W - WebPack
Sign in to Reply
deepak@tejas
8/4/2011 5:17 AM EDT
Pa - PlanAhead
Sign in to Reply
deepak@tejas
8/4/2011 5:19 AM EDT
Sc - Schematic
Sign in to Reply
deepak@tejas
8/4/2011 6:23 AM EDT
Ba - Bandwidth
Sign in to Reply
QuitKidding
8/4/2011 9:33 AM EDT
41 = Nb = Nibble
Sign in to Reply
huntergator
8/4/2011 9:52 AM EDT
Li = Little-Endian
Sign in to Reply
Max the Magnificent
8/4/2011 1:39 PM EDT
These are GREAT suggestions everyone -- please keep them coming...
Sign in to Reply
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
Ad = ADC
Da = DAC
Bc = binary counter
De = Decade counter (Dc already taken...)
Sign in to Reply
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
Sign in to Reply
deepak@tejas
8/5/2011 12:08 AM EDT
Hs - Hot Socketing
Sign in to Reply
deepak@tejas
8/5/2011 12:08 AM EDT
Es - Encryption Standard
Sign in to Reply
deepak@tejas
8/5/2011 12:09 AM EDT
Ru - Remote Upgrade
Sign in to Reply
deepak@tejas
8/5/2011 12:12 AM EDT
Pa - Package
Sign in to Reply
deepak@tejas
8/5/2011 12:21 AM EDT
Ba - Ball Array
Sign in to Reply
deepak@tejas
8/5/2011 12:25 AM EDT
Li - Local Interconnect
Sign in to Reply
deepak@tejas
8/5/2011 12:25 AM EDT
Li - Link
Sign in to Reply
deepak@tejas
8/5/2011 12:59 AM EDT
Sc - Synchronous Clear
Sign in to Reply
deepak@tejas
8/5/2011 6:20 AM EDT
Sc - Serial Configuration
Sign in to Reply
Max the Magnificent
8/5/2011 10:02 AM EDT
@DeePak -- You don't have to post these one at a time (grin)
Sign in to Reply
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.
Sign in to Reply
Max the Magnificent
8/9/2011 10:03 AM EDT
Yup -- Jan Gray pointed that out also -- I will make the change -- Max
Sign in to Reply
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
54 Xe = Hexadecimal equivalent
56 Ba = By area (logic optimization)
78 Pt = Product Term
79 Au = Adder unit
94 Pu = Pullup
100 Fm = Frame
101 Md = Mode
102 No = Negated output
103 Lr = Low rate
Sign in to Reply