基于FPGA的SATA控制器的研究与实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
SATA(Serial ATA)是一种高速的串行总线,采用点对点方式进行数据传输,内置数据/命令校验单元,支持热插拔,具有150MB/s(SATA 1.0)或300MB/s(SATA 2.0)传输速度。目前SATA应用广泛,但国内尚无独立研发的SATA芯片。
     分析了SATA协议标准,建立了SATA主机控制器的层次结构,将SATA控制器划分成主机接口层、ATA适配层、传输层、链路层和物理层,各层之间采用异步FIFO(First In First Out)通讯。实现了多状态机的协同设计,完成了高速并行CRC编解码器、并行8B/10B编解码器和基于线性回馈移位寄存器的加密解密器件的设计,实现了1.5Gbps的自动阻抗匹配的串行传输通道。实现了133MHz高速PCI主机接口,支持32/64位可配置总线宽度,支持地址配置空间,具有主控DMA功能。分析并测试了FIFO深度及性能,计算了FIFO深度对层间并行运行度的影响。进行了SATA控制器的运行测试,与同类商用产品性能相当。编写了智能化仿真验证向量脚本,对整个设计进行对称封装测试,保证设计的正确性和健壮性。运用低功耗的设计理念和流水线设计技巧,对仿真验证后的设计进行了优化和重构,节约了现场可编程门阵列(Field Programmable Gate Array,FPGA)可综合资源,增加了芯片的运行速度。深入探讨了芯片设计的自动化方法,使用一种新的描述模型取代传统的编码过程。给出了一个可视化操作环境,使用这个模型描述的设计任务,能直接转换成芯片可综合的逻辑描述,实现部分集成电路的设计自动化。
Serial ATA (SATA) is a high speed serial bus. It has point to point transfer mode, embedded data and commands checking unit, support hot plug and play, the band wide is 150MB per second (SATA version 1.0) or 300MB/s (SATA version 2.0). The product of SATA is widely used, but the entire products are provided from abroad, no chips developed on an independent basis. In the Embedded area, no SATA chip being provided right now.
     Analyzed SATA protocol, developed a stack layer model of SATA adapter, the stack model contains a host interface layer, an ATA simulation layer, a transport layer, a link layer and a physical layer. Asynchronous FIFO is arranged to communicate between the layers. Implement multiple state machine cooperation design. Designed high speeds parallel CRC encode decode unit, and parallel 8b to 10b encoder/decoder, and scrambling unit using line feedback shift register. Implement 1.5Gbps differential serial signal communications channel. Implement 133MHz max speed PCI host interface, 32/64 parametric bus width, with address configuration space and DMA. Analyzed and tested the depth and performance of FIFO, calculated the FIFO depth’s affection to parallel degree of the stack layer. Tested the performance of SATA Adapter, the working performance is as good as commercial product. Write simulation verification script, it make the RTL code work correctly. Gives an IC design automation model, use a new description strategy, it can translate the design task to synthetic HDL code, and can be used to a wide classic of chips.
引文
[1] Tom Brokaw. An introduction to serial ATA. Storage Management Solutions, 2000, 5(5): 50~56
    [2] Knut Grimsrud, Hubbert Smith. Serial ATA Storage Architecture and Applications: Designing High-Performance, Cost-Effective I/O Solutions. USA: Intel Press, 2003. 12~56
    [3] 王福勋, 余恬, 任思成. PCI 总线接口设计中的几点体会. 中国电子技术信息, 2001, (5): 3~4
    [4] Douglas J. Smith. A Practical Guide for Designing, Synthesizing, and Simulating ASICs and FPGAs using VHDL or Verilog. New York, USA: ACM Press, 1999. 109~116
    [5] 潘松, 王国栋. 基于 EDA 技术的 CPLD/FPGA 应用前景. 电子与自动化, 1999, 25(3): 3~6
    [6] 李凯南. FPGA 与硬件描述语言(HDL)的设计. 邵阳学院学报(自然科学版), 2005, 22(01): 42~44
    [7] J.BHASKER .Verilog HDL 硬件描述语言. 北京:机械工业出版社,2001. 40~60
    [8] 杨蔚, 曾碚凯, 祁兴武. 利用 FPGA 技术实现电子设计自动化. 微处理机, 1999, (1): 21~24
    [9] 王长宏, 陈朝阳, 邹雪城. Verilog HDL 设计实例及其仿真与综合. 电子工程师, 2001, (12): 22~24
    [10] 戚新宇. 基于 FPGA 设计的功能仿真和时序仿真. 航空电子技术, 2005, (3): 51~54
    [11] 程耀林. FPGA 的系统设计方法解析. 现代电子技术, 2005, 26(19): 90~93
    [12] 李江涛. RocketIO 高速串行传输原理与实现. 雷达与对抗, 2004, (4): 48~50
    [13] Thomas H.Lee. The Design of CMOS Radio-Frequency Integrated Circuits Second Edition. UK: Cambridge University Press, 2004. 716~762
    [14] 鹿宝生, 陈启美. 主 DMA 模式下 PCI 总线数据传输的 DSP 实现. 计算机工程与应用, 2006, (7): 84~88
    [15] 魏长城, 吴芝路. 基于 PCI 总线控制器的 DMA 方式传输数据的实现. 国外电子测量技术, 2005, (02): 43~45
    [16] 桑林, 张炜, 刘毅坚. PCI 接口芯片 S5935 及其应用. 国外电子元器件, 2004,2(12): 2~3
    [17] 顾长, 华张凯. PCI 总线的热插拔技术及实现. 国外电子元器件, 2001, (9): 1~2
    [18] 曹明, 陈文正. PCI 总线协议的 FPGA 实现及驱动设计. 电子技术应用, 2003, 12(6): 1~3
    [19] 姜万波, 徐兴, 徐德炳. 几种典型 PCI 总线接口芯片性能分析比较. 测控技术,2001, 20(8): 2~3
    [20] Tom Shanley, Don Anderson. PCI System Architecture, Fourth Edition. USA:PHEI, 2000. 232~239
    [21] Edward Solari, George Willse. PCI & PCI-X Hardware and Software Architecture and Design, Fifth Edition. USA: PHEI, 2003. 612~615
    [22] Perter Norton, Jehn Goodman. PC 技术内幕(第 8 版). 北京: 清华大学出版社, 2000. 140~144
    [23] EhudFinkelsteini, ShIomoWeiss. Microprocessor system buses, A case study. Journal of Systems Architecture, 1999, (45): 1151~1168
    [24] N.Sriskanthan, W.Yhooi. A design methodology for PC-expansion card development, Microprocessors and Microsystems, 2001, (24): 511~522
    [25] Ehud Finkelstein1, ShIomoWeiss. A PCIs simulation framework and some simulation results on PCI standard 2.1 1atency limitations. Journal of Systems Architecture, 2002, (4): 807~819
    [26] KimmoKuusilinna, TimoHama-lainen, JukkaSaarinen. Field programmable gatearray-based PCI interface for a coprocessor system. Microprocessors and Microsystems, 1999, (22): 373~388
    [27] F. Wajsburt, F. Pctrot, K. Dioury. Transistor controlled slew rate process independent PCI compliant I/O buffer with possible power/delay trade-off. Microelectronics Journal, 1998, (29): 733-751
    [28] J.M. Rodn'guez Corrala, et al. Application of bus emulation techniques to the design of a PCIMC68000 bridge. Microprocessors and Microsystems. 2002, (26): 373~389
    [29] 宋克柱, 杨小军. 基于 FPGA 的 PCI 接口设计. 电子技术应用, 2001, (9): 2~4
    [30] 郭天天, 卢焕, 章常. FPGA 实现 PCI 总线接口技术. 电子产品世界. 2002, (8): 34~37
    [31] 陈利学, 孙彪, 赵玉连. 微机总线与接口设计. 成都: 电子科技大学出版社, 1998, (4): 66~68
    [32] 王德谦. PCI 局部总线的研究与接口设计. 南开大学学报, 2000, (4): 3~4
    [33] 高明伦, 丁歧鹃, 胡永华, 等. PCI 总线接口的 VLSI 设计. 微电子学与计算机,1999(增刊): 5~13
    [34] 杨圃, 凌明. 基于软件模型的 SDRAM 指令 FIFO 的性能评估. 电子器件, 2005, (01): 188~191
    [35] 吕刚, 周爱国. 基于 CPLD 的单片机 PCI 接口设计. 单片机与嵌入式系统应用. 2002, (1): 224~237
    [36] 王小兵. 基于 PCI 总线的数字信号处理系统的硬件实现. 南京航空航天大学, 2002, (7): 33~37
    [37] 李萍, 夏斐斐. 基于 PCI 软“核”的 PCI 总线接口设计与实现,电子技术应用, 2001, (4): 21~23
    [38] 孟宪元. 新一代 FPGA:Virtex II-PRO. 世界电子元器件, 2002, (9): 20~21
    [39] 周文建. 基于 PCI 总线的数据采集卡 PnP 驱动程序的研究. 2001, (3): 34~35
    [40] 胡永华. 深亚微米理论及 IP 核设计技术的研究. 2001, (8): 4~5
    [41] 潘丽丽, 高品贤. 基于 PCI 总线的高速数据采集系统研究. 计算机应用, 2001, (9): 20~21
    [42] 肖杰, 李仁发, 徐成. 基于嵌入式 Linux 设备驱动程序的开发. 科学技术与工程, 2006, (03): 323~326
    [43] 程东年. RISC 体系结构中寄存器文件结构与管理机制研究. 计算机工程与科学, 1989, (04): 22~25
    [44] 伍卫华, 刘寄,张平. 工业 CT 数据采集系统中 FIFO 数据缓存器应用分析. 计算机应用, 2004, (12): 281~283
    [45] 杨圃, 凌明. 基于软件模型的 SDRAM 指令 FIFO 的性能评估. 电子器件, 2005, (01): 188~191
    [46] Markus Wloka, Guy Shaviv. Mixed-level modeling allows IC virtual prototypes. EEdesign. 2004, 12(16): 1~3
    [47] Ernst R. “Target Architectures.” Hardware/Software Co-Design: Principles and Practice.Boston:Kluwer,1997, (6): 24~26
    [48] 晓松. Synplicity: 依靠技术优势拓展中国市场. 世界电子元器件, 2006, (1): 14~15
    [49] J, Wolf W, eds. Hardware/Software Co-Design: Principles and Practice. Boston Kluwer, 1997, (6): 37~39
    [50] Hennessy JL, Patterson DA. Computer Architecture—A Quantitative Approach. 2nd ed. San Francisco: Morgan Kaufaman, 1996. 245~253
    [51] 林瑞清, 孙佳佳, 辛晓宁. 时序模型建立的静态时序分析技术. 微电子学与计算机, 2005, (10): 171~174
    [52] 唐振宇. ASIC 设计中的静态时序分析技术. 电子与封装, 2005, (10): 32~34
    [53] Janick Bergeron. Writing Testbenches, Functional Verification of HDL Models. USA: Amazon, 2000: 345~349
    [54] 冯丹, 张江陵. 不同负载分布下磁盘阵列响应时间分析. 计算机研究与发展. 2001,38( 9) :1144~1148
    [55] 周功业, 范俊, 刘晓芳. 基于无线网络的无线测距技术. 网络安全与技术应用. 2006, (9): 23~25
    [56] Himanshu Bhatnagar CONEXANT, Newport Beach, CA, USA. Advanced ASIC Chip Synthesis Using Synopsys Design Compiler and PrimeTime. USA: Amazon. 2001. 422~437
    [57] Roth CW, Jr. Digital Systems Design Using VHDL. Boston: PWS. 1998. 291~299
    [58] Rabey. Digital Integrated Circuits, a design perspective. USA: Prentice Hall, 2003. 308~310
    [59] 边计年, 王海力. 面向 SoC 的系统级设计方法与技术研究进展. 计算机世界报. 2005, (37): B3~B4
    [60] 高明伦. verilog 与 PC 机接口电路设计. 合肥: 安徽科学技术出版社, 2002. 73~78

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700