scieee Science in your language
[en] (orig)

High-Speed Serial Interfaces for Event-Driven Neuromorphic Systems

Abstract

Neuromorphic Engineering is the discipline of building sensory processing artificial systems inspired in the neural processing found in living beings. Biological neural brains show massive connectivity among neurons, which is not realistic to mimic using wires within silicon chips or between chips. Address- Event-Representation is a technology widely used among neuromorphic engineers to emulate such massive interconnectivity by time-multiplexing fast digital channels by transmitting “Address Events” between neurons that mimic the neural spikes transmitted in biology. Here we show on-going progress on bitserial SATA AER inter-FPGA communications for multi-tile scalable neuromorphic systems.

Read accessible full text

High-Speed Serial Interfaces for Event-Driven Neuromorphic Systems

Author: Jablonski, M.; Serrano Gotarredona, María Teresa; Linares Barranco, Bernabé
Publisher: IEEE Computer Society
Year: 2015
DOI: 10.1109/EBCCSP.2015.7300697
Source: https://idus.us.es/bitstreams/58439009-e515-4106-9971-bc21b6a00a54/download
High-Speed Se ial In e aces o E en -D i en
Neu omo phic Sys ems
M. Jabłoński1, T. Se ano-Go a edona2, and B. Lina es-Ba anco2
1AGH Uni e si y o Science and Technology, Depa men o Au oma ics and Bioenginee ing, K akow, Poland
2Ins i u o de Mic oelec ónica de Se illa, IMSE-CNM (CSIC and Uni . Se illa), SPAIN. be [email protected]
Abs ac —Neu omo phic Enginee ing is he discipline o building
senso y p ocessing a i icial sys ems inspi ed in he neu al
p ocessing ound in li ing beings. Biological neu al b ains show
massi e connec i i y among neu ons, which is no ealis ic o
mimic using wi es wi hin silicon chips o be ween chips. Add ess-
E en -Rep esen a ion is a echnology widely used among
neu omo phic enginee s o emula e such massi e in e connec i i y
by ime-mul iplexing as digi al channels by ansmi ing
“Add ess E en s” be ween neu ons ha mimic he neu al spikes
ansmi ed in biology. He e we show on-going p og ess on bi -
se ial SATA AER in e -FPGA communica ions o mul i- ile
scalable neu omo phic sys ems.
I. INTRODUCTION
Add ess E en Rep esen a ion (AER) is a communica ion
echnique p oposed in he ea ly 90s [1], widely adop ed by
neu omo phic enginee s. O iginally, he AER echnique would
mul iplex in ime he spike ac i i y o silicon neu ons (in he
ange o a ew Hz) in o a high-speed asynch onous hand-shaked
mul i-bi pa allel digi al bus, ansmi ing each spike in a ew
nano seconds. Since hen, AER based sys ems ha e g own in
complexi y and esou ces, equi ing highe and highe
communica ion bandwid hs and logic esou ces.
Wi h he g ow h o neu omo phic sys ems, p ocessing and
communica ion in as uc u es pe o mance equi emen s ha e
inc eased. In AER-based sys ems he connec i i y is one o he
main pe o mance bo lenecks. In e aces wi h pa allel digi al
buses ha e limi ed bandwid h due o bus equency limi a ions,
in e -bi ji e and skew, as well as bus leng h design es ic ions.
On he o he hand, bi -se ial in e aces allow o se e al Giga
bi s pe second speeds as well as adjus able e en bi leng hs.
The wo-wi e 4-phase handshake p o ocol, highly ypical in
pa allel AER links, can be subs i u ed by a low con ol
mechanism when he e a e LVDS links in bo h di ec ions [2].
In his pape we show on-going p og ess on AER bi -se ial
links be ween FPGAs, es ed a 1.5Gbps, capable o ansmi ing
32-bi Add ess E en s a a a e o up o 37.43Meps (mega e en s
pe second). These links exploi pa allel- o-se ial anscei e s
a ailable in Spa an-6 FPGAs. E en s a e gene a ed by a 32-bi
bi -pa allel Tes Pa e n Gene a o (TPG) unning a a highe
unco ela ed clock, which in e aces o he anscei e h ough a
clock-domain-c ossing in e ace and high-speed synch onize s.
The link has been es ed on a cus om PCB ha includes one
Spa an-6 150 (wi h se ial anscei e s) FPGA and 4
bidi ec ional SATA connec o s, which we call he “AER-Node”
PCB, and is in ended o g id assembly o many o hem.
II. AER-NODE PCB
The AER-Nodeboa d was designed wi h he aim o
demons a e ha spike-p ocessing unde AER is easible and
con enien o high speed ame- ee ision, il e ing, p ocessing
and ac ua ion, using spikes om ision senso s o DC mo o s.
Scalabili y is p o ided by ou SATA connec o s o
bidi ec ional LVDS high-speed communica ions o enable a
mesh o AER-Nodeboa ds [9]. Func ionali y can be inc eased
wi h p ope daugh e boa ds, h ough wo pa allel 28-bi
connec o s and wo 8-bi da a connec o s.
(a)
(b)
Fig.1:(a) AER-Nodeboa d wi h 4 bidi ec ional SATA and 2 pa allel AER
connec o s. (b) Tes assembly whe e all 4 bidi ec ional SATA links a e
in e changing unco ela ed e en s in bo h di ec ions.
Fo each bidi ec ional SATA link, Xilinx p o ides a
pa allel/se ial anscei e w appe (called he e “GTP ile”),
syn hesized by he Co e Gene a o u ili y.
Fig. 2: “GTP ile” anscei e w appe p o ided by Xilinx, showing
inpu and ou pu signals and ela ed clocks.
Fig. 2 shows one such “GTP ile” oge he wi h i s inpu and
ou pu signals and ela ed clocks. All GTP iles wi hin he FPGA
use an ex e nal e y low ji e e e ence clock wi h di e en ial
clock lines. These di e en ial clock lines eed in o special ab ic
wi hin he FPGA, and once inside, a e ans o med om
di e en ial o single ended be o e eeding he GTP ile. In ou
AER-Node boa ds we ha e used ex e nal clocks o ei he
100MHz o 150MHz. The 100MHz e e ence clock can be used
o LVDS da a a es o line = {1.0, 1.25, 2.0, 2.5}Gbps, while he
150Mhz one would p o ide line = {0.75, 1.5, 3.0}Gbps. O he
e e ence equencies a e also possible. In he p esen wo k we
used an AER-Node boa d wi h an ex e nal clock o 150MHz.
The GTP ile includes a ansmi e side (TX) which eads 8n
bi s o pa allel da a (DATA_ou ) and se ializes i ou o he
LVDS_ou di e en ial line. When using 8b/10b encoding [11]
an addi ional n-bi lag ‘cha isk’ signals whe he he
co esponding 8-bi wo d should be ea ed as a egula da a o a
comma command. The GTP ile also includes a ecei e side
(RX) which pe o ms he opposi e. The GTP ile can be
syn hesized o allow o di e en sizes o he pa allel
DATA_ou /in wo d. The pa allel da a can ha e mul iple o 8
bi s, whe e hese mul iples can be ei he n = 1, 2, 4, o 8, hus
allowing ‘DATA_ou /in’ o sizes 8, 16, 32, o 64 bi s. In his
wo k we used always n = 4, which co esponds o 32-bi pa allel
da a wo ds.
The GTP ile in e nal PLLs ans o m he ex e nal e e ence
clock in o he high speed line equency o LVDS bi -se ial
ansmission. I also p o ides wo e e ence clocks o use
ci cui y o equency and n . When using 8b/10b encoding line
= 10n , and he 8n bi s o ‘DATA_ou /in’ and n bi s o ‘cha isk’
a e ead a he ising edges o clock . Fo example, i using a
150MHz ex e nal e e ence clock and se ing line = 1.5Gbps wi h
n = 4, hen = 37.5MHz and 4 = 150MHz. Consequen ly, his
would allow o a heo e ical maximum e en h oughpu o
37.5Meps (mega e en s pe second), being each e en o 32-bi s.
As we will see in Sec ion IV, he maximum e en h oughpu is
sligh ly less, which is due o he need o pe iodically ansmi
commas o e en alignmen , clock co ec ion and low con ol.
III. BIT-SERIAL BI-DIRECTIONAL AER LINK
AER links be ween chips ha e adi ionally been pu ely
asynch onous [1], using bi -pa allel po s oge he wi h wo
lines o 4-phase handshaking. A se ial-wo d app oach was also
p oposed [3], which would educe he numbe o pa allel bi s by
hal . In he p esen app oach we a e using a clocked “GTP ile”
ha in e aces on one side h ough LVDS o ano he FPGA
“GTP ile”, and on he o he side o in-FPGA clocked use
ci cui y. This clocked use ci cui y may un a he same
equency he GTP ile is eading (TX) DATA_ou o
p o iding (RX) DATA_in, o may un a a di e en equency
(ei he co ela ed o and 4 , o o ally unco ela ed).
Ul ima ely, he FPGA use ci cui y would in e ace o an
ex e nal pa allel AER de ice (such like an AER e ina senso
[4], [5]) which is ully asynch onous.
He e we wan o explo e he case whe e he “GTP ile” has
o connec , inside he FPGA, o a synch onous pa allel AER
ci cui clocked a he maximum possible equency. Fo his, we
syn hesized a “Tes Pa e n Gene a o ” (TPG) which we we e
able o clock a 375MHz. This clock was gene a ed om a
second X al on he PCB, which is unco ela ed o he low-ji e
di e en ial one shown in Fig. 2. Fig. 3(a) illus a es he es
app oach by showing a simpli ied diag am o he ci cui y
connec ing o he TX pa o he “GTP ile” in Fig. 2. The e is a
high speed Tes Pa e n Gene a o clocked a TPG = 375MHz,
which p o ides a bi -pa allel DATA o 32-bi s h ough
handshaking (Req and Ack). These handshaking signals go
h ough high-speed synch onize s, each clocked by ei he TPG
o 4 , as shown in he igu e. The TX FSM clocked a 4
in e aces wi h he “GTP ile” on one side, and on he o he side
in e aces h ough a clock domain c ossing ci cui y wi h he
high speed TPG. Since “GTP ile” eads and w i es da a
acco ding o he ising edges o , he TX FSM will p o ide a
signal “phase” o he ci cui s unning a equency 4 o signal
when he ising edge o is app oaching. The TX FSM and
clock domain c ossing ci cui y a e bo h clocked by he same
clock 4 , and in e change in o ma ion abou hei in e nal s a us
h ough signals “ alid” and “busy”. The “clock domain
c ossing” ci cui in his case is a he simple and is gi en Fig.
3(b).
Fig. 3: (a) In e acing ci cui y be ween high speed clocked Tes Pa e n
Gene a o and GTP ile. (b) De ails o clock domain c ossing ci cui .
IV. EXPERIMENTAL RESULTS
In his Sec ion we p o ide ini ial expe imen al
cha ac e iza ion esul s o he case o line = 1.5Gbps, 4 =
150MHz, and = 37.5MHz.
A. In eg i y o LVDS Signals in FPGA BUILT-IN
GTPs
The quali y o bi -se ial ansmission using GTP in e aces
embedded in FPGAs depends on se e al ac o s. The p ima y
sou ce o e o s is he equency misma ch o he clocks
in ol ed and hei ji e . F equency misma ch (usually wi hin a
ew ens ppms) can be success ully esol ed by clock co ec ion
echniques based on elas ic bu e s and a ailable wi hin he
GTP iles [7], [8]. Physical p ope ies o he link, such as
quali y o PCB aces, wi es and connec o s also impac signal
in eg i y. A basic me ic ypically used o he e alua ion o bi -
se ial in e aces is BER (Bi E o Ra e), which indica es he
numbe o e oneous bi s ha ha e been ansmi ed du ing a
es pe iod - he lowe he alue he be e he link. Fo his
pu pose Xilinx p o ides dedica ed Tes Pa e n Gene a o s based
on 7-bi PRBS (Pseudo Random Bi S eam), which can be
gene a ed and e i ied inside a GTP anscei e i connec ed in
loop-back mode.
A me hod equen ly used o di ec ly measu e signal
in eg i y is he Eye-Diag am analysis, which gi es mo e
de ailed analog in o ma ion on ime and ol age ma gins o a
pa icula link and i s se up (p e-emphasis, equaliza ion). I
allows also de e mining he op imum sampling poin o a oid
iola ion o ime- ol age ma gins embedded in o an Eye-
Diag am. This me hod can howe e ha e he d awback ha he
shape o he diag am can be a ec ed by a aching he sampling
p obe, as his is an “in asi e” me hod. Fo example, Fig. 4
shows measu ed eye-diag ams a wo di e en sampling poin s.
(a)
(b)
Fig. 4: Eye-Diag ams o LVDS link measu ed a di e en posi ions: (a) a
FPGA RX inpu pins, (b) a in e -PCB SATA connec o a TX side.
An al e na i e non-in asi e echnique o s udying physical
channel p ope ies is he Ba h-Tube analysis. A Ba h-Tube
cu e can be acqui ed by measu ing he BER alue o a ixed
pe iod o ime and sweeping a ange o Sampling Poin alues.
The esul is a ba h-shaped cu e ha usually yields e y low
alues o BER (i.e. o 0.0) in he middle o he diag am, i.e.
a ound 0.5UI (Uni Window). This co esponds o hal o he
pe iod o he clock cycle, eco e ed om he ecei ed da a bi -
s eam. T h e cen e o he egion whe e he BER cu e eaches
0.0 is he op imum Sampling Poin o he se up o a pa icula
loop-back link (see Fig. 5). Plo s we e collec ed wi h he
ChipScope ha dwa e debug in e ace and so wa e plug-in
iBERT [8] o Spa an6 de ices.
Besides he Sampling Poin , he ollowing pa ame e s also
signi ican ly impac ansmission quali y: Vol age Swing, TX-
P eemphasis, and RX-Equaliza ion. They should be adjus ed o
gi e minimum BER a a pa icula speed o he link. Fig. 5
shows some sample Ba h-Tube diag ams o a ious RX-
Equaliza ion pa ame e s. Fig. 6 shows he o e lap o he ba h
g aph wi h he eye diag am.
Fig. 5: Ba h-Tube diag am o loop-back connec ion a 1.5Gbps, TX-
P eemphasis 2.5dB, Vol age Swing 929mV
Fig. 6: Ba h-Tube cha embedded in o Uni -Window o he Eye-Diag am,
o 1.5Gbps, TX-P eemphasis 2.5dB, ol age swing 929mV.
B. E en E o Ra e (EER) Cha ac e iza ion
Fo ou bi -se ial in e -FPGA link i is in e es ing o
cha ac e ize he “E en E o Ra e” (EER), as his would
include all possible e o sou ces, no only physical, bu also
logical, as he p ope ope a ion o he low con ol p o ocol, he
clock co ec ion scheme, o he mul i-by e e en alignmen [2].
In o de o es EER we used he TPG discussed in Sec ion II
clocked a a e y high clock equency o TGP = 375MHz. The
es se up in ol ing wo AER-Node PCBs (NB1 and NB2) is
shown in Fig. 7. The pa allel-se ial anscei e link in each
FPGA includes he “GTP ile”, he “TX block” (clocked a 4 ,
he as e use clock p o ided by “GTP ile”) and an “RX
block” (clocked a , he slowe use clock p o ided by “GTP
ile”). Besides he TPG, he e a e also wo “Synch onous Tes
Pa e n Checke s” (STPC) clocked a equency . The STPC a
he end o he chain in each FPGA es s EER o he whole
ansmission chain, while he STPC be ween “GTP ile” and
“TX block” es s clock domain c ossing issues.
Fig. 7: Tes se up consis ing o wo AER-Node PCBs (NB1 and NB2), each
wi h one bi -se ial link (“GTP ile”, “TX block” and “RX block”) oge he
wi h a “Tes Pa e n Gene a o ” (TPG) clocked a e y high equency TPG
= 375MHz and wo “Synch onous Tes Pa e n Checke s” (STPC) clocked
a he slowe clock p o ided by “GTP ile” = 37.5MHz.
Table I: Measu ed E o s, 32-bi E en Th oughpu and skew be ween
pai s o AER-Node Boa ds on all 4 links
In e nal
STPC
e o s
EER RX Measu ed
Th oughpu
(eps)
Clk
skew
(ppm)
NB2 → NB1 0 0.0 37426439 -16.134
NB1 → NB2 0 0.0 37427647 16.133
NB4 → NB3 0 0.0 37428143 -29.409
NB3 → NB4 0 0.0 37425942 29.408
Long e m es s o se ial connec ions a 1.5Gbps we e
pe o med concu en ly be ween wo AER-Node PCBs o each
all 4 se ial links, as connec ed in Fig. 2(b), du ing 20 hou s o
o e . No e o s we e de ec ed a none o he STPCs, as shown
in Table I: columns “In e nal STPC e o s” and “EER” (which
co esponds o he e o s coun ed a he STPC a he end o he
pa hs). The h oughpu measu ed a he in e nal STPCs was
always 37,427,043 eps, which co esponds exac ly o he
expec ed TX side gene a ed e ec i e da a a e (excluding he
COMMA densi y we we e using). Howe e , he measu ed
h oughpu a ies sligh ly on he pa h ends STPCs (RX side),
which a e he ones shown in Table I unde “RX Measu ed
Th oughpu ”, because hese a e numbe s a e measu ed using
he clocks a he des ina ion AER-Node boa d whose clock
di e s by a ew ens o ppms. The measu ed di e ence be ween
he TX and RX h oughpu s is gi en unde column “Clk skew”
in ppms.
CONCLUSIONS
We ha e shown co ec ope a ion o bi -se ial AER links
be ween cus om made PCBs o mul i- ile PCB assembly
in e connec ed h ough 4 SATA links. Ini ial expe imen s
ope a ing a 1.5Gbps a e epo ed. The links a e s imula ed
h ough asynch onous handshaking echniques inside each
FPGA by Tes Pa e n Gene a o s clocked by unco ela ed
clocks. These unco ela ed clocks we e se a he maximum
possible equency we we e able o se , 375MHz, in o de o es
he channel a i s maximum possible h oughpu . Exhaus i e
es s we e pe o med o e i y he co ec ope a ion, including
eye diag am measu emen s, ba h- ube measu emen s, bi e o
a es, and e en e o a es.
ACKNOWLEDGMENTS
This wo k has been suppo ed by Spanish g an s (wi h suppo om he
Eu opean Regional De elopmen Fund) BIOSENSE (TEC2012-37868-C04-
02/01), Andalusian g an NANO-NEURO (TIC-6091), Polish g an om he
Minis y o Science and Highe Educa ion o he Republic o Poland AGH UST
no. 11.11.120.612, EU CHIST-ERA g an PNEUMA (PRI-PIMCHI-2011-0768),
EU FP7 g an HBP (The Human B ain P ojec ) 604102, and H2020 EU g an
ECOMODE 644096.
REFERENCES
[1] M. Si ilo i, “Wi ing conside a ions in analog VLSI sys ems wi h
applica ion o ield-p og ammable ne wo ks,” Ph.D. Disse a ion,
Compu a ion and Neu al Sys ems, Cali o nia Ins . Technol., Pasadena,
CA, 1991.
[2] T. Iakymchuk, A. Rosado, T. Se ano-Go a edona, B. Lina es-Ba anco,
A. Jimenez-Fe nandez, A. Lina es-Ba anco, and G. Jimenez-Mo eno,
“An AER handshake-less modula in as uc u e PCB wi h 8 2.5Gbps
LVDS se ial links.” P oc. o he IEEE In . Symp. Ci c. and Sys . (ISCAS),
pp. 1556–1559, June 2014.
[3] K. Boahen, “Poin - o-Poin Connec i i y Be ween Neu omo phic Chips
Using Add ess E en s,” IEEE T ans. on Ci c. and Sys . Pa -II, ol. 47,
no. 5, pp. 416-434, May 2000.
[4] P. Lich s eine , C. Posch, and T. Delb uck, “A 128x128 120dB 15us
la ency asynch onous empo al con as ision senso ,” IEEE J. Solid S a e
Ci cui s, 43(2) 566-576, 2007.
[5] T. Se ano-Go a edona, B. Lina es-Ba anco, “A 128x128 1.5% Con as
Sensi i i y 0.9% FPN 3µs La ency 4mW Asynch onous F ame-F ee
Dynamic Vision Senso Using T ansimpedance P eampli ie s,” IEEE
Jou nal o Solid-S a e Ci cui s, ol. 48, No. 3, pp. 827 – 838, 2013.
[6] R. Se ano-Go a edona, e al. “CAVIAR: A 45k-Neu on, 5M-Synapse,
12G-connec s/sec AER Ha dwa e Senso y-P ocessing-Lea ning-Ac ua ing
Sys em o High Speed Visual Objec Recogni ion and T acking”, IEEE
T ans. on Neu al Ne wo ks, ol. 20, No. 9, pp. 1417-1438, Sep. 2009.
[7] DS160. Spa an-6 Family O e iew, .2.0. Xilinx, Oc obe 2011.
[8] UG386 Spa an-6 FPGA GTP T anscie e s. Ad ance P oduc
Speci ica ion, .2.2. Xilinx, Ap il 2010.
[9] C. Zama eño-Ramos, A. Lina es-Ba anco, T. Se ano-Go a edona, B.
Lina es-Ba anco, “Mul icas ing Mesh AER: A Scalable Assembly
App oach o Recon igu able Neu omo phicS uc u ed AER Sys ems.
Applica ion o Con Ne s”, IEEE T ans. on Biomedical Ci c. and Sys .,
ol. 7, No. 1, pp 82-102. Feb. 2013.
[10] Daniel B. Fasnach , Ad ian M. Wha ley, Giacomo Indi e i. “A Se ial
Communica ion In as uc u e o Mul i-Chip Add ess E en Sys ems”.
Ci cui s and Sys ems (ISCAS), 2008 IEEE In e na ional Symposium on.
[11] P. A. F anaszek, e al., “By e o ien ed DC balanced (0,4) 8b/10b
pa inioned block ansmission code,” US Pa en 4,486,739, Dec. 4, 1984.