目录
1.管脚图
该router有5个输入,4个输出,除了时钟和复位端口外其它信号端口均为16bits,如上左图;需要注意的是,该模块中每个信号的相同bit位算为“一起的”,即操作的时候是din[0],frame_n[0],valid_n[0]一起操作,而不能 din[0],frame_n[1],valid_n[2]跨位操作。
另外该模块儿可以选择从哪路进,从哪路出,相应的路为地址。
2.设计说明
- 时钟上升沿触发和采样
- 输入输出均为串行,即1bit/1clk
- packet包括header和payload
- packet可以通过任何一个输入端口输入并从对应输出端口输出
- 输入和输出之间没有内部延迟
3.复位协议
以上为其复位协议时序图,有以下几点需要注意:
1.复位时,reset_n为低电平,frame_n和valid_n为高电平
2.有效复位至少保持1个clk
3.复位后至少等待15个时钟周期后才可以发送数据
4.输入信号协议
以上为输入信号时序图,有以下几点需要注意:
din信号:
1.din[i]中的i表示从哪路输入,din中的第一段4bit的数据表示输出地址(低位开始),从哪路输出
2.地址传输完毕后拉高进入隔离段
3.隔离段结束后开始传输数据(低位开始)
frame_n信号:
1.下降沿指示packet的第一位数据
2.上升沿指示packet的最后一位数据
valid_n信号:
1.其在din的地址输入时间段可为任意值x
2.在隔离段pad拉高
3.其拉低时表示数据有效,因此在payload段若其拉高,则din数据无效
4.数据输入完毕后拉高
5.输出信号协议
输出信号时序图如上,比较简单,当valido_n和frameo_n均为低时数据有效,除了packet最后一位输出数据时frameo_n为高 。