原创 网络上的8051 free IP core资源

2009-8-13 09:44 7658 14 25 分类: FPGA/CPLD

         riple 的本科和硕士毕业设计都是关于8051 IP core的。本科毕设在Flex10k上实现了8051的部分指令集;硕士毕设完成了一个指令集和外设都可以配置的8051,核心工作是完成了指令集的自动配置。这算是我的第一个EDA产品了,采用的语言是Matlab,可以对用户的.hex编程文件进行指令统计分析,根据统计结果生成最简的VHDL代码。 riple


        不久前在网上查找资料,偶然发现多年前下载源代码的网站居然还在——The UCR Dalton Project riple


81201699-6993-4f1c-993a-047aea456551.gif


        进一步搜索了网上的8051 free IP Core资源,和5年前相比,竟然没什么大的变化。提供免费下载的还是这几个网址: riple


University of California, Riverside的Synthesizable VHDL Model of 8051 riple


Oregano Systems的MC8051 IP Core riple


OpenCores.org的oc8051 riple


        UCR的代码是最早查到的,也是我本科毕设和硕士期间主要研究的代码。这组代码内容规整,很容易看懂。一个严重的bug是在执行3字节指令时有最后一个字节指令取不到的问题,我后来给改正了,还添加了中断控制器和一些外设。一个主要的不足是16个周期的超长指令执行时间,较慢的运行速度限制了该IP核的实用性。这个IP core作为教学使用还是不错的。 riple


        Oregano Systems的8051代码是影响最广和最完善的。不但在Oregano自己的网站上有全面的文档、工具、实例,在Keil的网站上也有完整的开发工具链 riple


        OpenCores.org的代码我没看过,从module的数量和名称上看来,做的还是蛮细致的,比UCR的模块划分要复杂得多。


 


        相关链接:


af610eb3-525f-4c2b-a2d7-0c05424692af.gif


logo_ipextreme.gif


9d251a0e-d5f0-499d-b4ca-0a1d663f9162.gif


74447708-226c-4f9e-a741-cc64fe2ff445.gif


自由IP Core资源的利用


《单片机与嵌入式系统应用》




but05.gif  [ 业界论坛] 嵌入式系统教学模式探讨


2008年第11期


but05.gif  [ 经验交流] 80C51原始IP核内部RAM的扩展方案


2008年第2期


but05.gif  [ 技术纵横] 8051单片机中DPTR的扩展设计

2007年第2期
PARTNER CONTENT

文章评论11条评论)

登录后参与讨论

用户1106417 2010-9-27 19:31

ripple,我也有这个不情之请啊 希望能够了解到阁下的研究成果,关于oc8051的 在下的qq:361252105 email:cxx216@sina.com.cn 如果方便的话,可以告诉我您是哪个大学毕业的,我可以自己在学校的图书馆网站里搜素 呵呵

用户182918 2009-3-26 19:06

nickey032675@163.com

用户182918 2009-3-26 19:06

我主要是想看看您是如何增加的中断和外设的,期盼您的赐教

用户182918 2009-3-10 18:53

万分感激您的回复,如果您啥时候找到了您的设计希望能惠赐在下

用户182918 2009-3-10 18:52

万分赶紧您的回复,如果您啥时候找到了您的设计 希望能惠赐在下

用户182918 2009-3-10 18:51

这样啊 我主要是想看看您的中断和外设怎么加上去的 如果能看到代码就再好不过 现在这情况太可惜了

ash_riple_768180695 2009-3-8 21:43

真不好意思。我一时还找不到毕业设计的文件了。主要的修改就在三字节指令取指令部分,你注意一下从指令ROM中读数据的时序,应该可以在八个时钟周期中实现连续三个指令字节的读取。注意采用的指令ROM在地址输入端可以加寄存器,数据输出端不要加寄存器。这样的话,在控制器输出地址后的第一个周期地址被锁入,第二个周期才能取数据。一次读取需要三个周期才能完成。顺序执行的话,在八个周期内不能完成三个字节的读取;如果采用流水线的话,连续三个周期输出地址,可以在五个周期内完成三个字节的读取。

用户182918 2009-3-5 16:52

暂且称您做大虾吧 我是一在校学生,最近做一个实验。 需要在8051上进行故障注入实验。刚好准备使用的8051和您做过的一样,是UCR那个很久没有更新的。但是鄙人能力有限,无法完善8051. 所以有个冒昧的不情之请,能否分享一下您的成果。 期待您的回信 QQ:21156102 E-mail:nickey032675@163.com

用户461316 2008-11-3 22:05

不过楼主俺只是个本科生!应该没有你研究的那么深,我的本科毕业设计就是使用MC8051内核的,设计了一套FPGA开发系统,实现了FPGA,单片机,SOPC的入门开发,不过主要是使用MC8051内核完成了各种功能的硬件测试,在硬件上得到了运行。有流水灯,红外,DS18B20测温,LCD1602,LCD12864,已经串口等! 希望有机会和楼主交流一下!

用户461316 2008-11-3 21:59

哈哈!我是研究过MC8051 的,就研究代码都花了2个月的时间,现在已经整理出中文解析的电子版本了!
相关推荐阅读
ash_riple_768180695 2015-12-18 11:06
学习示例程序:FPGA快速系统原型设计--敏捷实践
        学习与开发板配套的示例程序,是敏捷实践的起点。示例程序是厂商针对开发板上提供的硬件资源和接口量身定做的工程,可以展示其FPGA芯片的功能和性能特点。从示例程序入手最大的好处就是:示...
ash_riple_768180695 2015-11-03 16:46
开发板选取:FPGA快速系统原型设计--敏捷实践
    既然是“实践”,就不能只谈编码和仿真,必须要上板运行、调试。这个虚拟项目的目标是实现一块兼容Intel82574L以太网控制器的千兆网卡,需要运行在一块具备PCIe接口和10/100/10...
ash_riple_768180695 2015-10-22 12:41
开篇:FPGA快速系统原型设计--敏捷实践
    虽然借用了 “系统原型开发”的标题,本系列文章将围绕FPGA IP级别的开发这个主题展开,如果可能的话,将扩展至FPGA System级别的开发。     先上一篇PPT:RSPwFP...
ash_riple_768180695 2013-08-26 10:21
学习SystemVerilog(二)——学习它的理由
    学习SystemVerilog的理由也很多,我在阅读SystemVerilog for Design 和 SystemVerilog for Verification两本书前言的过程中,总...
ash_riple_768180695 2013-08-26 10:19
学习SystemVerilog(一)——不学习它的理由
    想要学习SystemVerilog已经很久了。曾经尝试通过Accellera网站上给出的LRM学习,怎奈内容众多,找不出入手点和重点,只能望而却步。虽然手头有三本SystemVerilog...
ash_riple_768180695 2011-06-26 23:20
Hardware-Assisted IEEE1588 Implementation Analysis
06/18/11 11:00:05 PM         最近一段时间在研究IEEE1588-2008精确时间同步协议(PTP)。该协议可以在软件中实现,如果需要提高时间同步...
EE直播间
更多
我要评论
11
14
关闭 站长推荐上一条 /3 下一条