FPGA/IC优质开源项目(二)-FPGA开源项目社区-FPGA CPLD-ChipDebug

FPGA/IC优质开源项目(二)

该帖子部分内容已隐藏
付费阅读
已售 2
3积分
此内容为付费阅读,请付费后查看

FPGA/IC优质开源项目(二)

今天给大家带来3个UART开源IP核,以及一个IIC核。

C910核附带UART

C910的RISC开源核中附带的UART,使用Verilog书写(Verilog1995),单次传输数据可配置,支持5-8bit,支持配置奇偶校验,停止位支持配置1bit和2bit,UART支持apb总线接口。对比协议,完成度很高。

// 文件结构,UART在smart_run里面
|--C910_RTL_FACRORY/
  |--gen_rtl/     ##the source verilog code of C910 
  |--setup/       ##set the environment variables
|--smart_run/     ##the RTL simulation environment
  |--impl/        ##sdc file
  |--logical/     ##the SoC demo and test bench to run the simulation 
  |--setup/       ##GNU tool chain setting
  |--tests/       ##include the test suit, linker file, boot code and so on
  |--work/        ##the working directory
  |--Makefile     ##the simulation script
|--doc/           ##the user and integration manual of C910
// 开源地址
// 当然logical下还有ahb,apb,axi总线接口,大家自己可以看
https://github.com/MeDove/openc910/tree/main/smart_run/logical

Alexforencich UART

数据位宽固定为8bit,属于固定完成传输,可配置的点比较少,没有校验位,但带有AXI接口。这个代码完成度相对低一点。

 

ZipCPU UART

语言为Verilog,可配置1bit或2bit停止位,可配置5bit-8bit的数据位,奇偶校验位,包含一个简单的异步fifo,接口支持AXI-lite以及wishbone。总体来讲完成度比较高,接口也比较丰富。对比协议,完成度很高。

 

Alexforencich IIC

语言为Verilog,Alexforencich开源核之一,有主机和从机代码,主从机代码均支持axi-lite以及wishbone接口,附带fifo,以及一个初始化模板(用于传感器或者一些芯片控制的配置)。附带完整的测试文件。

// 文件列表
axis_fifo.v             : AXI stream FIFO
i2c_init.v              : Template I2C bus init state machine module
i2c_master.v            : I2C master module
i2c_master_axil.v       : I2C master module (32-bit AXI lite slave)
i2c_master_wbs_8.v      : I2C master module (8-bit Wishbone slave)
i2c_master_wbs_16.v     : I2C master module (16-bit Wishbone slave)
i2c_slave.v             : I2C slave module
i2c_slave_axil_master.v : I2C slave module (parametrizable AXI lite master)
i2c_slave_wbm.v         : I2C slave module (parametrizable Wishbone master)



 

总结

还有一些优质的UART和IIC的IP核,收集完毕会发给大家,对于新学者来讲,可以研究一下代码,尤其是一些对比协议完成度很高的代码,对自己学习的提升也很有好处。

请登录后发表评论

    没有回复内容