- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
使用QDR-IV设计高性能网络系统之二
地址奇偶校验
QDR-IV只有一条地址总线,但其以双倍数据速率和高频率运行。因此,地址奇偶校验输入(AP)和地址奇偶校验错误标志输出(PE#)引脚提供了片上地址奇偶校验功能,以便能够确保地址总线完整性。地址奇偶校验功能是可选的;可以使用配置寄存器来启用或禁用它。
通过该AP引脚可以在各地址引脚(An到A0)上进行偶校验。设置AP值,使AP和An-A0中逻辑"1"的总数为偶数。
对于数据总线宽度为x18的器件,设置AP值,使A[21:0]和AP中逻辑"1"的总数为偶数。
对于数据总线宽度为x36的器件,设置AP值,使A[20:0]和AP中逻辑"1"的总数为偶数。
器件的示例
以数据总线宽度为x36的器件的21’h1E0000和21’h1F0000地址为示例。表11显示的是如何为每个地址设置AP值。
表11. 地址奇偶功能
|
| AP | A[20:0]和AP中逻辑"1"的 总数
|
| |||||||||||||||||||||
21'h1E0000 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 因为在A[20:0]中逻辑"1"的总数为偶数(4)
| |
21'h1F0000 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 6 |
|
当发生奇偶错误时,在配置寄存器4、5、6和7中(请查看相关数据手册,了解有关配置寄存器的更多信息)记录第一个错误的完整地址以及端口A/B错误位和地址翻转位。端口A/B错误位表示发生地址奇偶错误的端口:0表示端口A,1表示端口B。持续锁存该信息,直到向配置寄存器3中的地址奇偶错误清除位写入1来清除该信息为止。
通过两个计数器,可以表示是否发生了多个地址奇偶错误。端口A错误计数是端口A地址上奇偶错误数量的运行计数器。同样,端口B错误计数是端口b地址上奇偶错误数量的运行计数器。每个计数器独立计数到最大值(3),然后将停止计数。这些计数器均是自由运行的;对配置寄存器3的地址奇偶错误清除位写入1,可将其复位。
检测到地址奇偶错误后,写操作就会被忽略,以防止损坏存储器。但是,如果输入地址错误,仍会继续执行读操作,但存储器会发送出假数据。
PE#为低电平有效信号,表示地址奇偶错误。检测到地址奇偶错误后,PE#信号在8个周期(QDR-IV XP SRAM)或5个周期(QDR-IV HP SRAM)内被设置为0。它将保持置位状态,直到通过配置寄存器清除了错误为止。处理完地址翻转便表示完成了地址奇偶检查。
PE#转为低电平后,会停止存储器操作,并使用配置寄存器将PE#复位为高电平。此外,由于发生AP错误的写操作也被阻止,所以需要向存储器重新编写数据。
在本系列第三部分,我们将探讨校正问题,其中包括矫正训练、控制/地址校正和读写校正,以及纠错码(ECC)和QDR-IV存储器控制器的设计建议。
上一篇:电子标签拣选系统进入无线时代
下一篇:如何构建专属自己的CAN-bus应用层协议