什么是漂洗| 不想怀孕有什么办法| spect是什么检查| 攒局什么意思| absolue是兰蔻的什么产品| 6.30是什么星座| 避孕套有什么作用| 枯木逢春是什么生肖| 玄孙是什么意思| 猫咪掉胡子是什么原因| 失温是什么意思| 查血常规挂什么科| 女真族现在是什么族| 排卵期什么时候| 作灶什么意思| 蚕蛹是什么| tg是什么| 长颈鹿代表什么生肖| 什么叫比例| 什么叫蛋白质| 水清则无鱼什么意思| 短兵相见是什么意思| 保和丸有什么功效| 品学兼优是什么意思| hpv亚型是什么意思| 咖啡加奶有什么坏处和好处| dave是什么意思| 云南白药草长什么样| 属猪与什么属相相合| 怕金病帕金森是什么症状| 香港脚是什么症状图片| 为什么一吃饭就拉肚子| 幽门螺杆菌是什么意思| BORDEAUX是什么红酒| 肾结石检查什么项目| 小龙虾不能和什么一起吃| 蓝莓有什么作用| 电势是什么| 我到底是什么| 夏对什么| 同仁什么意思| 为什么心里总想一个人| 万亿后面是什么单位| 肛门塞什么东西最舒服| oder是什么意思| 降结肠疼是什么原因| 三观不合是什么意思| 什么是hpv感染| 怀孕初期要注意什么| 1880年是什么朝代| 乾隆是什么生肖| 甲亢什么意思| 做了胃镜多久可以吃东西吃些什么| 总是犯困是什么原因| 为什么夏天吃姜好| 复试是什么意思| 更年期出虚汗吃什么药| 不一般是什么意思| 幼稚是什么意思| 仙女下凡是什么生肖| 大姨妈为什么会推迟| 折耳猫是什么| 莜面是什么面做的| 梦见床代表什么预兆| 农历十二月是什么月| 菜鸟裹裹是什么快递| wc的完整形式是什么| 大腿根部是什么部位| 靓是什么意思| 钢琴十级什么水平| 杨幂的公司叫什么名字| 男人吃什么壮阳最快| 屁股眼痒是什么原因| 尿酸高适合喝什么茶| 成人晚上磨牙是什么原因| 喆字五行属什么| 什么颜色衣服最防晒| 后卫是什么意思| 6月1日是什么星座| 脾胃是什么意思| 后背出汗多是什么原因| 1020是什么星座| 妈妈最大的愿望是什么| bv中间型是什么意思| 普字五行属什么| 黄酒什么味道| bpa是什么意思| 新疆以前叫什么| 孕妇吃维生素c有什么好处| 亲和力是什么意思| 01是什么意思| 葡萄糖偏高有什么问题| 膀胱炎是什么症状表现| 明天属什么生肖| 肺部小结节是什么意思| 辰寅卯是什么生肖| pears是什么意思| 八月十二是什么星座| 家里养什么动物吃蟑螂| 8023是什么意思啊| 眼眶疼是什么原因| 轮回是什么意思| 胃火喝什么茶降火| 618是什么节日| 虾仁和什么包饺子好吃| 鼻子歪了是什么原因| 6像什么| 为什么天空是蓝色的| 黎明是什么时间| 硬卧是什么样子的| 居住证有什么用| 检查胰腺挂什么科| 流产有什么症状或感觉| 满月红鸡蛋用什么染| 胆固醇是什么意思| 武夷肉桂茶属于什么茶| 一次不忠终身不用什么意思| 10月11日是什么星座| 一饿就胃疼什么原因| 女性尿里带血是什么原因| 婴儿什么时候会走路| 是什么有什么| 豚鼠吃什么食物| 为什么会血脂高| 大姨妈期间同房有什么影响| 周中是什么意思| 毛囊炎是什么原因引起的| 左侧卵巢内囊性回声是什么意思| 澄粉是什么粉| 怀孕尿液是什么颜色| 做梦梦到自己拉屎是什么意思| 血糖高吃什么好能降糖| 刘字是什么偏旁| 什么人不适合做收银员| 重度抑郁症吃什么药| 阑尾炎吃什么药最有效| 泰格豪雅属于什么档次| 尿黄尿臭是什么原因| 故宫里面有什么| 卵巢过度刺激综合症是什么| 干姜和生姜有什么区别| 血沉偏高是什么原因| 潘驴邓小闲什么意思| 氯雷他定片治什么病| 阴虚吃什么食补最快| 参数错误是什么意思| ami是什么| 脖子爱出汗是什么原因| 马克定食是什么意思| 猪寸骨是什么部位| 铲子是什么意思| 什么是有氧运动和无氧运动| 澳门为什么叫澳门| 甲是什么生肖| 尿频尿急吃什么药| 同型半胱氨酸偏高吃什么药| 做梦笑出声是什么预兆| 空气炸锅什么牌子好| unny是什么牌子| 卖淫是什么意思| 孕妇什么东西不能吃| 练八段锦有什么好处| tmd是什么意思| darker是什么意思| 血液是由什么组成的| 泡脚去湿气用什么泡最好| 213什么意思| 姜子牙是什么神仙| 生物医学工程专业学什么| 眼睛干涩模糊用什么眼药水| 蜈蚣为什么不能打死| 环磷酰胺是什么药| 骨化是什么意思| 吃什么孕酮值可以增高| 脚肿吃什么药消肿| 大象的天敌是什么动物| 1978年什么命| 生理性厌恶是什么意思| 紫字五行属什么| 右眼睛总跳是什么原因| 惊什么万什么| 增生性贫血是什么意思| 睡觉爱做梦是什么原因| 白细胞降低是什么原因| 检查乳房挂什么科| 婴儿胎毛什么时候剃最好| 子宫内膜炎用什么药效果好| 小孩眼屎多是什么原因引起的| 口腔疱疹用什么药| 容易做梦是什么原因引起的| 穷极一生是什么意思| 姑娘是什么意思| 皮疹是什么症状| 做爱为什么那么舒服| 血糖高是什么病| 牡丹是什么意思| 周瑜和诸葛亮是什么关系| 禾加比读什么| 八嘎呀路是什么意思| 有什么好吃的家常菜| 反流性食管炎可以吃什么水果| 舌头凉凉的是什么原因| bpd是胎儿的什么意思| 兰若是什么意思| 声音的传播需要什么| 女人白虎是什么意思| 分销是什么意思| 奶阵是什么意思| 碱和小苏打有什么区别| 豆蔻年华什么意思| 96120是什么电话| 清明节一般开什么生肖| 伦字五行属什么| 头皮发麻什么原因| 08年属什么生肖| 董监高是什么意思| 奀是什么意思| a型血rh阳性是什么意思| 清明节与什么生肖有关| 碱是什么| 软化耳屎的药水叫什么| 一什么永什么| 少田宅痣是什么意思| 1971年属猪的是什么命| 申时属什么生肖| coser什么意思| 老年人脚肿什么原因| 甲亢病是什么病| 心脏早搏吃什么药好| 脑梗做什么检查| 什么情况会导致月经推迟不来| 儿童吃什么| 贫血是什么原因引起的| 吃什么水果能美白| 97年是属什么的| 睡觉打呼噜是什么病| 1999年出生属什么生肖| 肝血管瘤有什么症状表现| 鳄龟吃什么| fleece是什么面料| 为什么不| 扫码是什么意思| 李宇春父亲是干什么的| 为什么脚底会脱皮| freeze是什么意思| 赧然是什么意思| 什么的教学楼| 基础病是什么意思| 耳后淋巴结肿大挂什么科| 低筋面粉适合做什么| 口渴是什么原因| 蟑螂卵什么样| 鬼迷心窍什么意思| 下巴反复长痘痘是什么原因| 老虎的天敌是什么动物| 阴毛有什么作用| 筋膜提升术是什么| 自然生化流产是什么意思| loho眼镜属于什么档次| 戒色是什么意思| 什么是菩提心| 胃胀不舒服吃什么药| 团长是什么军衔| 02属什么| 百度

新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 一个针对FPGA的完全可配置嵌入式32位RISC处理器

男子筹款13万救儿被证明有3套房 称想留父母1套筹款救助变现

作者: 时间:2025-08-04 来源:网络 收藏
百度 三要准确把握党委会工作方法的严肃性,增强组织意识。

  使用嵌入式微处理器的设计不断增长。根据Dataquest的统计,一年大约启动10万个设计项目,其中约30%包含某种形式的微处理器。

  形成这种趋势有几个方面的原因。首先,数据流应用更适合可编程硬件,同时嵌入式微处理器更适合于执行控制流的应用。第二,要改变设计时,嵌入式处理器呈现更大的灵活性。最后,用软核的嵌入式微处理器消除了处理器过时的风险。从传统上而言,对嵌入式微处理器有一些限制,包括成本,速度和设计性能。随着工艺技术和设计技术的进步,这些限制正在不断改善,现在设计人员更有可能在他们的应用中考虑使用嵌入式FPGA微处理器。

  与过去相比,现成的微处理器已经大大比嵌入式微处理器便宜。但是,今天的低成本FPGA被证明是一个节约成本的解决方案。如果设计中已经使用了FPGA,处理器可以整合到现有的FPGA架构,节省了分立器件或新的FPGA成本。设计周期也是一个重要的因素。将硬件与微处理器子系统构成相关的架构并进行实施能有多快?编写,测试和在微处理器上调试运行的代码需要多久?在过去几年中,在整体功能和易用性方面,针对嵌入式微处理器开发的软件工具也有了明显的改善。因此,现在可以在几分钟内运行设计,并且进行测试。产品上市的时间缩短了,因为现在用软件实现功能比硬件更快,更简单。

  用现成的微处理器达到的性能有良好的历史记录。随着技术的改进,FPGA在功能和整个系统的速度方面有了显著的进步。由于现在的FPGA能够处理更大的带宽,嵌入式处理器对于许多设计有很大的吸引力。此外,由于FPGA与其他专用模块的紧密配合,软IP核的扩展性提供了一个系统接口,就性能和吞吐量方面而言,现在一个片上处理器可以提供卓越的设计方案。

  当评估诸如这样的特殊处理器时,使用嵌入式软处理器的优点非常清楚。

  一个典型的嵌入式处理器子系统

  让我们来看看一个典型的嵌入式处理器子系统,例如,软处理器。该处理器需要有能与外界通信的功能,因此通常核连接到一个片上总线系统,在此情况下是WISHBONE开放源代码总线。然后还需要一个存储系统,用来保存处理器程序代码以及处理器核使用的数据。对外部通信而言,在一个典型的系统中有各种接口,从简单的通信接口和连接、更复杂的协议到应用中的专用硬件模块。现在该处理器总线架构需要连接外设和存储器系统。一个典型的系统如图1所示。

典型的嵌入式RISC处理器子系统  

图1 典型的嵌入式子系统

  让我们来看看处理器核本身:是基于哈佛总线结构的RISC架构的微处理器(图2)。 RISC体系结构提供了一个简单的指令集和更快的性能。哈佛总线架构提供独立的指令和数据总线,能够执行单周期指令。该处理器拥有32个通用寄存器,可处理多达32个外部的中断。定制的处理器可以插入乘法器或桶形移位器,以及不同的调试功能。

LatticeMico32

图2 LatticeMico32:一个可配置的

  Mico32可以用于各种存储系统,同时使用内嵌存储器用于存储指令和数据。内嵌存储器可以建立一个本地哈佛结构,并允许单周期访问指令和数据。对于更大的存储器需求,处理器通过一个仲裁器连接到其他的存储器模块或接口。这可以是用FPGA的存储器资源来实现的 “片上”存储器,或接口至外部存储器,诸如SSRAM、Flash和DRAM。处理所有访问协议至外部存储器的合适接口模块是由MSB提供的。提供可选的指令和数据高速缓存,能够配置成各种选择(高速缓存的大小,高速缓存块的大小等等)。

  通过一个开放源码Wishbone总线接口,该处理器连接到各种外围元件。针对快速周转周期,图形用户界面可以轻松和快速地创建处理器平台。除了标准存储器控制器,这可能包括各种接口,不仅支持I2C、通用IO、定时器,UART以及SPI,还能支持更复杂的模块,如PCI接口或TriSpeed以太网MAC。

  直接存储器访问(DMA)控制器是可用的,添加主器件(master)至Wishbone总线,以免除处理器的数据传输工作。这也允许有DMA功能的外设高效地直接传输数据到存储系统,从而节省了片上总线的带宽。

  除了外围元件和DMA,用户可以自定义仲裁方案。总线结构产生器支持主器件(master)方和从器件(Slave)方的总线仲裁。如果能够满足系统性能的要求,主器件方总线仲裁提供了一个简单的低成本解决方案。然而,如果在设计中有多个总线主器件和多个从器件,在任何时间主器件方总线仲裁限制与单总线主器件通信。在许多设计中,通过两个或两个以上的总线主器件同时与独立的从器件进行通信,从器件方仲裁改进了性能。图3展示了可用的仲裁方案。 

仲裁方案

图3 仲裁方案

  用户还可以创建自己的基于Wishbone总线的外设元件,然后通过整合到MSB自动连接到总线。因此,LatticeMico32的架构提供了两种可能性:第一,人们可以创建定制的元件,将它放人MSB中的可用元件列表(图4)。第二,可以构建出所谓的Passthru元件,可以将Wishbone接口引出到核的外面,因此,用户可以在FPGA的其他部分添加任何逻辑块。   

图4 创建定制的外围组件

  这些配置选项能够针对不同的应用定制LatticeMico32。带宽范围从小的和片内或片外存储器面积优化的控制器到具有多个接口的全功能平台,以及访问更大的存储器(可能是片外)。从FPGA访问其他的逻辑模块还允许处理器系统和FPGA专用模块之间的密切互动,以便进一步改进性能。取消了传统上使用并行于FPGA的外部控制器的复杂访问机制。    

  可扩展性

  由于处理器代码是可读的Verilog RTL代码,用户可以轻松识别IP功能块,诸如取指令单元,指令译码或ALU,以及各种流水线阶段。因此,通过定制指令,这些也可以修改和增强。用户也可以执行操作码。因此,在指令字中,LatticeMico32提供了备用的操作码域。

  遵照以下一些基本的步骤,可以构建自定义指令:

  •   增强的指令译码器。这是一个简单的情况,提取内部操作码的功能,并生成需要整合此命令至LatticeMico32的所有必须的控制信号。
  •   写功能的实现并将其整合至LatticeMico32 的ALU。
  •   对于多周期命令,构建必要的拖延信号,以便妥善处理处理器流水线。
  •   如果需要其他的专门逻辑(例如额外的专用寄存器),这可以单独的添加到核。

  通过定制指令和添加定制外设,扩展处理器核是一个非常有效的方式,用来定制处理器的核以便实现系统的性能要求。通常情况下,一些专门的功能用硬件实现比软件更好。或并行处理可以获得额外的性能。这种机制能够无缝集成硬件加速模块至处理器架构。这将保持用同样的方式处理这些部件的功能,如同正常的软件代码或使用标准外设。

  对于需要数据/信号处理功能的应用,往往需要组合的功能和DSP,以达到系统的性能和吞吐量。添加扩展和定制元件还可以包括信号处理单元。可以用硬件非常有效地实现,使用专用的DSP块,诸如乘/累加,用各种FPGA的硬件都可以实现这些功能。

  设计环境

  LatticeMico32系统拥有三个集成工具:

  •   MicoSystem Builder(MSB)

  针对硬件实现,MSB产生平台描述和相关的硬件描述语言(HDL)代码。设计人员可以选择连接到微处理器的外围组件,以及指定它们之间的连接。

  •   C/C++软件工程环境(SPE)

  C/C++ SPE调用编译器,汇编器和连接器,使代码的开发针对运行于用MSB构建的平台。可以通过C/C++ SPE来完成,用MSB构建的平台可以作为参考。 

  •   调试器和Reveal逻辑分析器

  在C/C + +源代码调试器提供汇编中的调试功能,并能够观察处理器的寄存器和存储器。设计人员还可以使用莱迪思的Reveal逻辑分析器观察和控制硬件中代码的执行情况。

  所有的工具和IP已完全纳入莱迪思的ispLEVER FPGA软件设计环境,这使得通过整个FPGA设计流程快速的进行设计。这些工具也有利于有效地使用FPGA的资源。

  在构建过程中,用完全可读的RTL Verilog源代码创建处理器的代码及其外围设备。提供用于综合和仿真的脚本,约束文件关注硬件的设置和引脚。

  目前有3种操作系统: Theobroma Systems的uClinux 和U-Boot、Micriμm的μC/OS-II RTOS和TOPPERS/JSP的μITRON RTOS。

  LatticeMico32提供了一个开放源码许可证。莱迪思的开放IP核许可协议将与MSB工具生成的HDL代码一起使用。大部分图形用户界面将在Eclipse的授权许可下使用,同时对软件的内部运作,如编译器、汇编器,连接器和调试器,许可协议将遵循GNU-GPL。

  因为这是开放源码软IP,这个处理器的IP核还可以免费迁移到其他技术并加以实现。

  性能和资源利用

  LatticeMico32提供高性能和尽可能高的资源利用率。对于关心资源的设计人员,基本配置不使用任何指令或数据高速缓存,单周期移位器,也没有乘法器。对于那些更关注性能的设计人员,全配置使用8KB的指令高速缓存,8K字节的数据高速缓存,3个周期的移位器和一个乘法器。对于需要采用折衷方法的用户,标准配置类似于完整的配置,但没有8K字节的高速数据缓存。表1展示了针对LatticeECP3 FPGA的资源利用率和性能。

表1 LatticeMico32资源利用率和使用LatticeECP3的性能

LatticeMico32资源利用率和使用LatticeECP3的性能

  总结

  LatticeMico32是一个完整的嵌入式微处理器设计方案。它提供了一个灵活的架构,并允许用户定制处理器系统以满足系统的要求(性能、成本、功耗)。处理器的IP和专用硬件的密切配合提供了一个易于使用的环境,这也可显著提升系统的性能,使设计拥有很大的灵活性。

  LatticeMico32开发工具可以很容易地在FPGA中实现一个微处理器和与之连接的外围元件。易用性确保最少的设计时间,从而使得产品能够更快的上市。 

  根据开放源代码许可证和软件开发工具各自的开放源代码许可证,如Eclipse和GNU - GPL,提供生成的HDL,莱迪思可以让用户完全控制其设计。开放源代码为设计人员提供所需要的可视性,灵活性和便携性。 



评论


相关推荐

技术专区

关闭
懿字五行属什么 扬州有什么好吃的 苦海无涯回头是岸是什么意思 文化底蕴是什么意思 膏肓是什么意思
黄瓜吃了有什么好处 手术后吃什么好 属蛇本命佛是什么佛 羽字五行属什么的 五岳是什么意思
肝低密度灶是什么意思 水鱼煲鸡汤放什么药材 老花眼是什么症状 手脚脱皮是什么原因 查甲状腺挂什么科
郫县豆瓣酱能做什么菜 太平天国为什么会失败 scr医学上是什么意思 灵芝有什么好处 脚疼是什么原因
荠菜什么时候播种最好luyiluode.com 憋不住大便是什么原因造成的hcv8jop2ns7r.cn 萎缩性胃炎有什么症状hcv9jop6ns8r.cn 什么是时装hcv7jop6ns6r.cn 李果是什么水果hcv9jop0ns2r.cn
什么是尊严luyiluode.com 为什么新疆人不吃猪肉hcv9jop5ns7r.cn 改年龄需要什么手续hcv9jop7ns0r.cn 爱生闷气的人容易得什么病hcv8jop8ns8r.cn 牡丹花什么季节开hcv8jop4ns6r.cn
膀胱炎做什么检查能看出来hcv9jop2ns2r.cn 耳垂后面有痣代表什么hcv8jop4ns6r.cn 痔疮什么样hcv7jop9ns9r.cn 洁身自爱是什么意思hcv7jop5ns4r.cn 丑时是什么时间kuyehao.com
acca是什么专业hcv8jop9ns1r.cn 婴儿头发长得慢是什么原因hcv8jop5ns1r.cn 女人30如狼40如虎是什么意思hcv8jop0ns3r.cn 脑梗有什么症状前兆hcv8jop0ns0r.cn 宜余事勿取是什么意思gangsutong.com
百度