The numbers in this timing diagram, mark the following transitions:
1. address, byteenable, and read are asserted after the rising edge of clk.
The slave asserts waitrequest, stalling the transfer.
2. waitrequest is sampled. Because waitrequest is asserted, the cycle becomes a wait-state.
Address,read, write, and byteenable remain constant.
3. The slave deasserts waitrequest after the rising edge of clk.
4. readdata, response and deasserted waitrequest are sampled, completing the transfer.
5. address, writedata, byteenable, and write signals are asserted after the rising edge of clk.
The slave asserts waitrequest stalling the transfer.
6. The slave deasserts waitrequest after the rising edge of clk.
7. The slave captures write data ending the transfer.
--> 요약하자면...
master에서 slave로 read 시 'read' signal을 올려주면, default low에 있던 "waitrequest"가
응답(slave 응답)하여 "high"가 되고, read address를 latch하여 "readdatavalid"구간에 data를 master에게
넘겨 준다.
반대로, master에서 slave write 시 'write' signal을 올려주면, default low에 있던 "waitrequest"가 응답
(slave 응답)하여 "high"가 되고, slave의 address에 write 동작을 진행한다.
'[FPGA]' 카테고리의 다른 글
bmp2mif 변환 tool (0) | 2016.09.28 |
---|---|
[Altera] The DLL could not be placed in any location to satisfy its connectivity requirements (0) | 2016.04.18 |
[FPGA] Altera ""Simple Nios II System" (0) | 2016.03.04 |
genver 사용 방법 (0) | 2015.11.19 |
[altera] Error: {variation_name}_p0_pin_map.tcl: Failed to find PLL reference clock (0) | 2015.11.16 |