grokking fpga clock management
play

Grokking FPGA clock management Philmon Gardet Jean-Franois - PowerPoint PPT Presentation

Grokking FPGA clock management Philmon Gardet Jean-Franois Nguyen <phil@lse.epita.fr> <jf@lse.epita.fr> Architecture 2 Architecture Overview IO buffers PLLs / DLLs CLBs Interconnect Block RAM 3 CLB


  1. Grokking FPGA clock management Philémon Gardet Jean-François Nguyen <phil@lse.epita.fr> <jf@lse.epita.fr>

  2. Architecture 2

  3. Architecture Overview ● IO buffers ● PLLs / DLLs ● CLBs ● Interconnect ● Block RAM 3

  4. CLB - Configurable Logic Blocks ● Logic Cell: LUT, carry logic, storage ● Chained carry ● Fast adjacent interconnect ● clk signal 4

  5. PLL & DLL Input clock Phase-locked loop Delay-locked loop 5

  6. Clock Networking ● Fan-out Clock signal intensity ● Clock skew Different phases from the same source 6

  7. Clock Networking - Clock Tree ● Global networks Regional Low-skew / High fanout ● Regional networks Global Mid-skew / Mid fanout ● Edge networks Low-skew / high speed / IO 7

  8. Clock Tree Strategy 8

  9. Timing considerations 9

  10. Clock Skew clk clk1 D Q D Q D Q clk2 clk1 clk2 clk3 clk3 clk Clock skew 10

  11. Short Path clk d q1 q2 d D Q D Q q1 clk q2 11

  12. Short Path clk clk1 clk2 d q1 q2 D Q D Q clk1 clk2 d clk q1 q2 12

  13. Short Path - Fixes Clock reversing d q1 q2 D Q D Q ● Add delay in data path clk1 clk2 ● Clock Reversing clk Alternate Phase clocking d q1 q2 ● Alternate Phase Clocking D Q D Q DLL ○ clk1 clk2 ○ Differents edge triggers Clock buffering ○ clk1 clk2 13

  14. Place and Route ● Routability ○ Avoid coupling capacitance or detours ● Timing constraints ○ Bound delay on each path ● Power consumption ● Yield 14

  15. Timing Analysis ● Minimum clock period is dictated by the largest delay ● Slack is the tolerated delay before increasing the minimum clock period Critical path has a slack of 0 ● 15

  16. Asynchronous & others dumb things 16

  17. Metastability D Q a c ● Real world b ⟶ transitive time a ● Intermediate logic state b ● Unknown behaviour if output feeds data to another stage c 17

  18. Combinatory Logic as Trigger - Short paths b a ● Without any synchronization no hypothesis about order q c ● Metastability possibility d 18

  19. Latches - Race condition ● Asynchronous control ● Transitive state Combinatory Combinatory D Q logic logic E ● Loop ⟶ No idea about a current state 19

  20. Combinatory Logic - Delay blocks b a delay ● Force delay on each input delay q c delay ● Control transitive state delay d 20

  21. Handshaking pipeline Req delay Ack Sender Receiver Data path Delay to send req signal = worst data setting time 21

  22. Asynchronous data encoding protocols - dual rail Ack d r value r0 0 0 Null d0 1 0 1 Sender Receiver r1 0 1 0 d1 1 1 Invalid Double the data bus → Assure validity 22

  23. Manual Place & Route ● No depend to place & route algorithms changes ● Control clock skew and delays ● Automatization optimized for asynchronous logic ? 23

  24. Thank you! 24

  25. Bibliography ● FPGA Architecture, timing, software / Mose Wahlstrom - Lattice R&D Team, 2013 ● The real hardware / V. Angeloc - VHDL-FPGA@PI, 2013 7 Series FPGAs Clocking Resources User Guide / Lattice, 2017 ● ● iCE40 LP/HX Family Data Sheet / Lattice, 2017 Routing Algorithms and Architectures for Field-Programmable Gate arrays / ● Stephen Dean Brown, 1992 Design Guidelines for Optimal Results in High-Density FPGAs / Altera, 2003 ● ● Rapid System Prototyping with FPGAs / R.C. Coffer, Ben Harding - Elsevier, 2005 ● Application of Specific Delay Window Routing for Timing Optimization in FPGA Designs / Evan Wegley, Qinhai Zhag - Lattice, 2015 ● Clock Skew and Short Paths Timing / Microsemi, 2011 The Art of hardware architecture / Mohit Arora - Springer, 2012 ● 25

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend