FPGA-SOC中的Picoblaze串口优化设计与扩展

0 下载量 137 浏览量 更新于2024-08-28 收藏 264KB PDF 举报
在基于FPGA的System-on-Chip (SOC) 设计中,串口通信作为常见的接口被广泛应用,但直接在FPGA上实现串口数据处理会面临资源消耗大、效率低的问题。为了优化设计并减少硬件开销,文章提出了将嵌入式微处理器(如Xilinx的Picoblaze)集成到FPGA中的策略。Picoblaze是一种轻量级的微处理器IP核,适合Spartan-II/E、CoolRunner-II和Virtex系列FPGA,其特性包括高达40 MIPs的执行速度,49个指令、16个寄存器和256个地址端口,以及一个可屏蔽中断,使其在性能上超越了传统8位微处理器。 选择Picoblaze的主要原因是考虑到它较低的硬件资源占用,能够在有限的资源内高效处理串口数据。然而,Picoblaze的存储空间相对较小,为此,文章还讨论了如何通过外置SDRAM扩展其存储能力,以满足实际应用的需求。具体来说,设计中采用了Xilinx提供的串口收发IP核,该IP核支持灵活的波特率设置和符号规则,并配备有16字节的接收FIFO和发送FIFO,提高了数据传输的可靠性和效率。 设计的核心是构建一个由嵌入式微处理器Picoblaze与串口收发IP核组成的串口通信子系统,如图1所示。这个系统通过内部总线结构将串口模块与微处理器相连,确保数据能在两者之间顺畅传输。通过这种设计方式,不仅简化了FPGA的复杂性,还有效地分配了硬件资源,提升了系统的整体性能和灵活性。参考文献[1]提供了关于Picoblaze功能、原理的详细信息,对于深入理解这一技术至关重要。