标签 FPGA 下的文章

Zebu学习笔记(3)- 编译

Zebu采用一个Unified Compile Flow, 整个Design和Testbench都统一通过VCS管理和编译,对于VCS的调用也是通过UTF工程文件定义的。UTF文件包含系统编译的所有信息,包括VCS编译和Zebu后端(类似综合布局布线)的所有操作,所有操作均由zCui完成,VCS编译过程会处理所有Design相关的源文件,为了有效的Porting,我们可以直接重用仿真环境的V...

继续阅读 »

Zebu学习笔记(2)- 设计移植

Zebu的设计理念是尽量减轻移植的复杂度,所以整个工程的设计也是和Verification平台一样有相应的testbench链接我们的Design(DUT)和外设(测试环境),如果我们的Verification平台已经有相应的testbench,那么我们可以直接复用这部分代码,否则我们要根据我们的实际需求建立一个Testbench用于描述Design和外设链接关系。如果我们的DUT和测试环境...

继续阅读 »

Zebu学习笔记(1)- 系统介绍

Zebu Synopsys公司推出的高容量仿真系统,具有移植简单,调试方便等多种优点。Zebu支持多种软硬件结合的调试方式,可以处理多数在Verification下具有挑战性的Bug调试,Zebu和通过PCI接口和PC通信,支持多个用户分Slot同时访问。另外Zebu还支持通过ICE(Direct In-Circuit Emulation)和Smart Z-ICE两种方式连接DUT,ICE可...

继续阅读 »

一个简单的PWM发生和捕获Verilog IP设计

这次IP的设计是有一个非常现实的应用需求的,在测试系统中,我们需要对芯片出来的PWM进行捕获或者对芯片出来的频率信号进行计算,另外还需要产生一定的PWM波形激励,用于测试芯片的PWM捕获功能,不过这里只是提供简单的PWM输出,诸如对称PWM,多通道同步等功能,这里暂时没有实现。首先我们来看看PWM波形捕获的设计,具体的需求是要计算输入信号的频率和占空比信息。简单的想法就是用一个计数器对波形进...

继续阅读 »

Picorv32处理器中断的实现

Picorv32是一个非常精简的RISCV核心,实现了RISC-V RV32IMC指令集。源代码开源且核心只有一个不到3000行的Verilog文件,FPGA实现非常简单,可以使用开源的iverilog软件进行仿真,非常适合FPGA学习和性能要求不高的一些FPGA应用场合。实际上Picorv32已经有很多应用,甚至有ASIC上的应用,这里作为学习目的,我也用这个小核心做了一个非常简单的SOC...

继续阅读 »