IP核是指用于产品应用专用集成电路 (ASIC)或者可编辑逻辑器件(FPGA)的逻辑块或数据块。将一些在数字电路中常用但比较复杂的功能块,如FIR滤波器 ,SDRAM控制器,PCI接口等等设计成可修改参数的模块,让其他用户可以直接调用这些模块,避免重复劳动,这样就大大减轻了工程师的负担。随着CPLD/FPGA的规模越来越大,设计越来越复杂,使用IP核是一个发展趋势。
IP核的分类及特点 - IP核的知识产权核心分为三大种类:硬核,中核和软核。硬件中心是知识产权构思的物质表现。这些利于即插即用应用软件并且比其它两种类型核的轻便性和灵活性要差。像硬核一样,中核(有时候也称为半硬核)可以携带许多配置数据,而且可以配置许多不同的应用软件。三者之中最有灵活性的就是软核了,它存在于任何一个网络列表(一列逻辑门位和互相连接而成的集成电路)或者硬件描述语言(HDL)代码中。

IP核的设计原理 - 软IP内核通常是用某种HDL文本提交用户,它已经过行为级设计优化和功能验证,但其中不含有任何具体的物理信息。据此,用户可以综合出正确的门电路级网表,并可以进行后续结构设计,具有最大的灵活性,可以很容易地借助于EDA综合工具与其他外部逻辑电路结合成一体,根据各种不同的半导体工艺,设计成具有不同性能的器件。可以商品化的软IP内核一般电路结构总门数都在5000门以上。但是,如果后续设计不当,有可能导致整个结果失败。软IP内核又称作虚拟器件。
硬IP内核是基于某种半导体工艺的物理设计,已有固定的拓扑布局和具体工艺,并已经过工艺验证,具有可保证的性能。其提供给用户的形式是电路物理结构掩模版图和全套工艺文件,是可以拿来就用的全套技术。
固IP内核的设计深度则是介于软IP内核和硬IP内核之间,除了完成硬IP内核所有的设计外,还完成了门电路级综合和时序仿真等设计环节。一般以门电路级网表形式提交用户使用。
IP核的总线介绍 - 为了使IP 核集成更快速、更方便,缩短进入市场的时间,迫切需要一种标准的互联方案,在这一背景下产生的片上总线OCB(on-chip bus)技术。目前,基于IP 核互连的总线结构较有影响力的有三种:IBM公司的Core Connect,ARM 公司的AMBA(Advanced MicrocontrollerBusArchitecture)和SilicoreCorp公司的Wishbone。
1.CoreConnect 总线IBM 公司的CoreConnect 总线提供了三种基本结构:处理器内部总线PLB(Processor Local Bus)、片上外围总线OPB(On-ChipPeripheral Bus)和设备控制总线DCR(Device Control Register)。
(1) PLB 标准是为总线传输的主要发出者和接受者之间提供高带宽、低延迟的连接。其主要特征为: 高性能处理器内部总线;
交叠的读和写功能(最快每周期两次传输); 支持分段传输; 读和写分开; 32~64 位数据总线; 32 位地址空间; 支持16~64 字节突发传输模式; 4 级仲裁优先权; 特殊DMA(Direct Memory Access)模式。
(2) OPB 标准为连接具有不同的总线宽度及时序要求的外设和内存提供了一条途径,并尽量减小对PLB 性能的影响。其主要特性如下: 片上外围总线、支持多个主设备; 32 位地址空间; 读和写数据总线分开; 8~32 位数据总线; 动态总线宽度; 支持重试模式(如果主设备要求的从设备忙,主设备隔一段时间再次请求); 支持突发(burst)传输模式; 支持DMA。
(2) DCR 是用来规范CPU 通用寄存器设备,控制寄存器之间传输数据。DCR 总线在内存地址映射中取消了配置寄存器,减少取操作,增加处理器内部总线的带宽。其主要特征如下: 10 位地址总线; 32 位数据总线; 同步和异步的传输; 分布式结构。
CoreConnect 拥有完备的一整套技术文档,在技术上可行性较强,可以应用在类似于工作站这样的高性能系统的连接,对于简单的嵌入式应用来说可能有点太复杂,提供的许多特性无法用到。
2.AMBA 总线AMBA 总线体系结构定义了2 种总线:AHB(Advanced High-performanceSOC 设计初级培训(Bus)和APB(Advance Peripheral Bus),如图1-2 所示。图1-2 AMBA 总线体系结构(1) AHB 主要用于连接高性能、高吞吐率的设备,完成ARM 芯核与CPU外围部分例如存储通道控制器,DMA 控制器,SPI 接口等的整合。它的主要特性包括: 多控制器; 分段传输; 单周期总线控制权移交; 32~128 位总线宽; 包含一种访问保护机制,用来区别特权访问和无特权访问模式,或指令和数据提取等; 突发传输模式最大为16 节; 访问空间限制在32 位;
支持仲裁、REQ、GNT 和LOCK; 支持字节、半字和字传输。
(2) APB 是专为降低功耗以及接口复杂性而设计的外围互联总线,它常被用于连接一些低带宽、低速传输的外设,主要特征如下: 低性能、低功率外围总线; 单控制器; 32 位地址空间; 32 位数据总线; 分开读和写数据总线。
3.Wishbone 总线Wishbone 总线是Silicore 公司推出的片上总线协议。它的结构极其简单、灵活,又完全公开、完全免费,获得众多支持。主要特征如下: 所有应用使用一个总线体系结构; 支持多控制器; 64 位地址空间; 8~64 位数据总线(可扩展); 单周期读和写; 支持重试; 支持内存映射,FIFO(FISRT IN FIRSTO U T )和十字互连接口; 由终端用户定义仲裁方式。同前2 种总线结构相比,Wishbone 只定义了一种高速总线,在既需要高速总线又需要低速总线的系统中,使用两个Wishbone 接口,比起设计两个不同的接口要简单些。
4.Avalon 总线这里,再介绍下将要用到的Avalon 总线。Avalon 总线发布于2000 年的秋天,是Altera 公司针对FPGAs 而设计的一种SOPC 接口标准。它提供了各设备之间连接的接口,可以用于片上处理器和外设之间的连接。Avalon 总线具有支持SOPC,结构简单和可参数化配置等特点。主要特征如下: 32 位地址空间,共计4Gbytes; 所有Avalon 总线信号都是和Avalon 总线时钟同步的,这种设计简化了Avalon 总线的时序行为,便于和高速外设的连接; 地址、数据和控制信号使用独立的端口,以简化外设的设计; Avalon 总线自动为所有外设产生片选信号,简化了Avalon 总线外设的设计; 支持多主设备结构。多个主设备可以共存于Avalon 总线之中,Avalon 总线会自动产生仲裁逻辑; 基于向导的配置。用户可以使用图形化的向导来配置Avalon 总线的相关参数; 动态的总线宽度。Avalon 总线会自动处理不同位宽设备间的信SOC 设计初级培训号,使不同位宽的设备可以顺利通讯;
|