搭建LEON3研发环境(一)
来自:
http://blog.ifeng.com/2132044.html
1、安装LINUX 操作系统:redhat5.5企业版。
2、安装软件MODELSIM6.51 ,启动LICENSE。
3、下载LEON3的相关软件包。
(a) grlib-gpl-1.1.0-b4102.zip
(b) sparc-elf-4.4.2-1.0.36b.tar.bz2
(c) grmon-eval-1.1.44.tar.gz
(d) mkprom2-2.0.32.tar.gz
(e) libmpfr.so.1库的32bit包。
4、解压以上文件,并把b和d放在目录/opt下,并添加到配置文件.tcshrc里面。
5、make xconfig
• make xconfig to edit/change the config.vhd file and the LEON3 configuration
• make sure that you have at least one uart enabled
• enable the option "Accelerated uart tracing" in the "VHDL debugging" menu.
• don’t use ahbrom (internal prom) => address conflicts with memory ctrl
6、 Compile
a、gcc hello.c
Compile the application into on or more object file, but do not link:
$ sparc-elf-gcc -msoft-float -O2 hello.c -o hello.exe (资料上运行命令)
$sparc-elf-gcc -msoft-float -c -g -O2 hello.c (mkprom2 pdf上运行命令)
注:在编译的时候,gcc是需要libmpfr.so.1的库文件。
上面两条命令都可以,只是要对应下面的mkprom命令而已。
b、mkprom
-msoft-float Compile for hardware without a FPU.
-rmw Perform read-modify-write cycles during byte and halfword writes.
-nocomp Don.t compress application. Decreases loading time on the expense of PROM size.
-v Be verbose; reports compression statistics and compile commands
-ramsize size Defines the total available RAM in kBytes.
Used to initialize the in the memory configuration register( s). The default value is 2048 (2MByte).
$ mkprom2 -rmw -nocomp -msoft-float -dump dump.s -v -ramsize 1024 hello.exe
注:当数据量不大的时候就不需要压缩了。反之把-nocomp去掉,工具就会压 缩boot文件。
$ mkprom2 -freq 40 -rmw hello.o -dump dump.s -msoft-float(mkprom2 pdf上运行命令)
注:mkprom2命令先是初始化硬件,然后调用sparc-elf-gcc命令,同时添加很多参数来生成
prom.out程序。如下提示为:
LEON MKPROM prom builder for BCC v1.0.24
Copyright Gaisler Research 2004, all rights reserved.
section: .text at 0x40000000, size 19600 bytes
Uncoded stream length: 19600 bytes
Coded stream length: 10134 bytes
Compression Ratio: 1.934
section: .data at 0x40004c90, size 2796 bytes
Uncoded stream length: 2796 bytes
Coded stream length: 812 bytes
Compression Ratio: 3.443
creating LEON3 boot prom: prom.out
/opt/sparc-elf-3.2.3/bin/sparc-elf-gcc.exe -qprom -O2 -g -N -Tlinkprom -Ttext=0x0 dump.s
-lmkprom3 -o prom.out -msoft-float
注:最后一行不是执行命令,而是执行mkprom2后调用gcc及参数的显示而已。
c、objcopy
sparc-elf-objcopy -O srec prom.out prom.srec
7、 Simulation
搭建LEON3研发环境(一)相关推荐
- 【CDH】超详细-搭建本地大数据研发环境(16G内存+CDH)
工欲善其事必先利其器,在经过大量的理论学习以后,需要有一个本地的研发环境来进行练手.已经工作的可以不依赖于公司的环境,在家也可以随意的练习.而自学大数据的同学,也可以进行本地练习,大数据是一门偏实践的 ...
- 超详细!搭建本地大数据研发环境(16G内存+CDH)
工欲善其事必先利其器,在经过大量的理论学习以后,需要有一个本地的研发环境来进行练手.已经工作的可以不依赖于公司的环境,在家也可以随意的练习.而自学大数据的同学,也可以进行本地练习,大数据是一门偏实践的 ...
- Docker学习总结(23)——Docker搭建大规模测试环境的实践
内容来源:2017年4月8日,第四范式资深测试开发工程师孙高飞在"饿了么技术沙龙[第四弹]北京研发中心测试专场"进行<docker搭建大规模测试环境的实践>演讲分享.I ...
- 从0开始构建蓝牙耳机研发环境
参与蓝牙耳机研发部组建, 第一步:对头戴蓝牙耳机芯片方案选型,综合考虑选择BES 恒玄的方案,在BES具体芯片型号上也做了综合考虑,性价比,功能场景, 最终选择BES2300YP, . 第二步:寻找恒 ...
- c fread 快读 详解_万事开头难,手把手教你搭建Appium自动化测试环境,实践案例详解...
随着移动互联网的发展,各行各业纷纷引入了移动端相关测试技术,很多公司都已经研发了基于Web前端与App端的相关应用程序,为了更好的保证软件测试的质量,移动端自动化测试已走进测试世界,随着终端特性的多机 ...
- Win10 的 VMware 中安装 UOS 20,在 UOS 中安装 QtCreator 及搭建 DTK 开发环境
文章目录 关联博文: 背景缘由: win10里面的VMware安装UOS20系统: 在`uos20`里面安装`QtCreator`: 在`QtCretor`里面配置`dtk`开发环境和工程模板: 安装 ...
- 【rotors】多旋翼无人机仿真(一)——搭建rotors仿真环境
[rotors]多旋翼无人机仿真(一)--搭建rotors仿真环境 [rotors]多旋翼无人机仿真(二)--设置飞行轨迹 [rotors]多旋翼无人机仿真(三)--SE3控制 [rotors]多旋翼 ...
- emacs 搭建racket开发环境
emacs 搭建racket开发环境 emacs下搭建开发racket的环境,笔者之前用过下面两种模式:geiser和racket-mode.相对而言,后一种方式要显得简单.本文主要介绍后一种方式环境 ...
- 在CentOS 6.2上搭建vim开发环境
在CentOS 6.2上搭建vim开发环境 最后更新日期:2013-07-05 1.首先使用Ubuntu(所在ip为192.168.16.230)翻墙登陆http://www.vim.org/,下载其 ...
最新文章
- oracle+view性能,Oracle 10g的隐含参数_complex_view_merging引发的性能问题
- EventBus3.0源码解析
- SOA理论与概念深入剖析
- Pycharm社区版配置Django
- 计算机网络中的数据链路层
- zoj 1088 System Overload
- centos中文字符集,中文日志
- Shell 工具(cut)
- 米扑代理:爬虫代理IP哪家好呢
- PC设置切换Fn功能键
- js获取某一天是星期几
- 中国十大域名注册虚拟主机提供商排行榜
- Borland听我对你说
- 【系统】【winget】从零开始配置一个开发用的 Windows 11 系统的电脑 - winget 代码终端安装软件
- 360网站卫士推出免费风云加速
- 【钟表识别】基于计算机视觉实现钟表时间识别含Matlab源码
- ios 编译时报 Could not build module xxx 的解决方法尝试
- 机械键盘组合键失灵、Windows键失灵
- STM32 HAL 硬件I2C HTU21D
- oracle 优化器之执行计划
热门文章
- 基于PysimpleGUI+pymysql建立的简单管理系统(1)
- 服务器开发- 牌和牌的基本操作
- Storm之——流组件简单串行编程实践
- 验证(Verification)与确认(Validation)的差别
- asp.net944-网络游戏虚拟物品交易平台设计与实现#毕业设计
- 个人小程序诞生记【第二周】积分排名、生成海报、积分抽奖
- 联想 android 5.1 root,联想Z5 Pro root教程,利用recovery来进行卡刷root包操作
- 用Python爬取手机壁纸,太简单了吧
- 爬取彼岸网所有4K美图壁纸--Python脚本
- 物联网如何推动制造业迈向“工业4.0”?