论文部分内容阅读
随着集成电路技术的高速发展,SOC技术已经越来越多的得到关注和应用,尤其是片上总线技术和IP技术的出现使其逐渐成为IC设计的主流技术。但是目前SOC的发展也面临巨大挑战,主要是IP复用技术和IP互连技术,因此研究IP复用技术对于SOC发展具有重要意义。SPI是Motorola公司开发的一种同步、高速、全双工的通信总线,因其信号线少、结构简单等特点被越来越多的芯片集成为通信总线。基于此,本文设计了两种可复用、可配置的SPI协议IP软核,为SOC设计中的IP互连提供灵活的SPI接口,这完全满足SOC技术的发展要求和发展方向,对于业界和SPI的推广应用都具有极高的意义和实用价值。论文采用自顶向下的设计思路设计了两种可复用的SPI协议IP软核。其中基于微控制器的SPI协议IP软核的设计主要关注SPI主机功能,制定了设计目标,使其可与8个从机通信,同时能设置通信速率和选择传输模式,并将接收逻辑和发送逻辑分开,为发送和接收数据设计了双缓冲机制。根据设计目标划分了子模块并给出了完整的模块问互连框图,说明了寄存器设置,论述了关键子模块的Verilog HDL实现过程,包括设计思路分析,微控制器接口模块、时钟逻辑模块以及发送和接收逻辑模块的Verilog代码设计和其中关键问题的解决方法。之后设计了一种基于Wishbone总线的SPI协议IP软核。该IP软核通过参数化的方法实现设备数量为4、8、16时多设备间的通信,并自主决定设备的主从身份,通过设置对从机控制的优先级别仲裁多主设备对同一从机的控制权。同时能灵活设置通信模式和通信速率。分析以上设计目标并划分了功能子模块,说明了寄存器的设置过程,最后详细阐述了关键子模块的Verilog HDL实现过程,包括整体的设计思路和Wishbone总线接口模块、时钟逻辑模块以及内部控制寄存器模块的功能分析和Verilog代码设计。在完成设计的基础上,采用业界认可的仿真软件Modelsim和QuartusⅡ对设计的两种IP软核分别进行了RTL级功能和时序仿真验证,结果表明两种SPI协议IP软核设计正确,所有功能都达到预期的目标,仿真验证顺利通过。