论文部分内容阅读
在SOC设计日趋复杂化的今天,其发展的两大挑战是IP复用技术和IP互联技术,研究IP复用技术对于业界具有重要的现实意义。SPI接口技术是一种高速、全双工、同步的通信总线,并且连线简单,有利于节省PCB空间,现在越来越多的芯片集成了这种通信协议。本项目设计了一种可配置为Master或Slave模式,可设置通信速率并能适用于不同传输模式的SPI协议IP核。这符合SOC设计技术发展的方向,具有重要意义。综合分析对比了Silicore的Wishbone、IBM的CoreConnect和ARM的AMBA总线的技术特点。Wishbone总线配置简单、灵活,有丰富的免费资源。CoreConnect总线构造完整、通用,功能强大,但是对于嵌入式应用来说可能太复杂。AMBA总线拥有众多第三方支持,已成为广泛支持的现有互连标准之一。特别是应用于低速系统连接的APB总线,技术简单,功耗低,实用性强,具有广阔的应用前景。根据Top-Down的设计思路,论述了基于AMBA总线的SPI IP核模块的设计方法。首先分析设计目标,定义了模块外围的接口;进而根据设计功能划分子模块,进一步分析其内部互连信号,给出了完整的子模块和信号连接图,以及详细的端口连接和寄存器的设置。随后讨论了本IP核的Verilog HDL实现过程。首先阐述了整体的设计思路,进一步以时钟分频模块、APB接口模块、收发逻辑控制模块等关键子模块为例介绍了Verilog代码设计过程中的几种典型问题与其解决过程。使用业界通用的仿真软件Modelsim和QuartusII对本IP核的Verilog HDL代码设计进行了功能仿真和FPGA时序仿真。测试了模块重启、更换不同时钟分频频率、在所有四种传输时序下以及Master和Slave模式下的数据传输,结果表明模块的寄存器值和读写数据值均符合预期,仿真顺利通过。