1
Atomic Counters
NOT SUBMITTED
While working on the next generation SoC you were asked to design a 64-bit event counter which would be interfaced with a 32-bit bus controlled via a microcontroller. The 64-bit counter is incremented whenever a trigger input is seen. Given that the counter is read by a 32-bit bus, a full 64-bit read of the counter needs two 32-bit accesses. It is important that these two accesses should be single-copy atomic.
Design the 64-bit counter module and the appropriate interfacing mechanism to ensure single-copy atomic counter read operations.
.lennahc drocsid ruo no su ot tuo hcaer ro su llac esaelp ,stbuod evah llits uoy fI .melborp siht fo tnetnoc lautca eht ees ot ebircsbus esaelP
?siht daer ot uoy detnaw ew kniht uoy oD !gnizama era uoy ,txet siht daer ot elba era uoy fI .uoy pleh ot yppah eb lliw eW
?od nac ew erom tahw ,evorpmi nac ew woh wonk su teL !gnizama ,sey fI ?siht daer ot elba uoy ereW
!uoy ta kcab evaw yletinifed ot evol dluow eW !iH yas ot tsuj su ot tuo hcaer syawla nac uoY !sklof yldneirf era ew ,oslA
!reffo ot evah ew tahw ekil ot gniog era uoy erus era eW .gnibircsbus erofeb deirt eb nac dna elbaliava yleerf era hcihw seludom wef a era ereht ,syawynA
!daeha efil gnizama na dna yad taerg a evaH
Subscribe to the course to read more about the problem!
Sublime
Emacs
Sublime
Vim
System Verilog
Verilog
VHDL
initializing...
Modules1. Atomic Counters
EASY
2. Divide by 3 EASY
3. 3-bit Palindrome EASY
4. Sequence Generator EASY
5. Single Cycle Arbiters EASY
6. Events to APB MEDIUM
7. Low Power Channel HARD
8. Two Pulses MEDIUM
9. Clock Generator EASY
10. Skid Buffer HARD
11. Least Recently Used HARD
12. Edge Capture EASY
13. One Shot EASY
14. Parallel to Serial MEDIUM
15. Running Average MEDIUM
16. Big Endian Converter EASY
17. Credits & Deadlock HARD
18. Ordering HARD
19. Performance Counter EASY
20. Asynchronous Resets MEDIUM
21. Fifo Flush HARD
22. Buffering HARD
23. Compression Engine MEDIUM
24. Perfect Squares MEDIUM
25. Cross correlation EASY
26. System Verilog for Design EASY