⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 skyeye硬件模拟平台,第二部分 安装与使用.htm

📁 你想没有硬件就跑μc OS吗
💻 HTM
📖 第 1 页 / 共 4 页
字号:
          <LI>fd_out=outdevname outdevname表示用于输出的设备文件名,其值为实际的串口设备文件/dev/ttySx 
          </LI></UL>例如:<BR>uart: fd_in=/dev/ttyS0, fd_out=/dev/ttyS0<BR>
        <LI>skyeye的log控制选项<BR>log选项用于控制skyeye输出硬件系统的执行状态信息,包括每次执行指令时的执行指令值、寄存器值、各种硬件状态等。<BR>格式:<BR>log: 
        logon=0|1, logfile=filename, start=number1, end=number2, 
        length=number3<BR>
        <UL>
          <LI>logon=0|1|2|3,如果值等于0表示不进行记录,如果值等于1表示记录指令和指令地址流,如果值等于2表示记录指令和指令地址和主要寄存器内容,如果值等于3表示记录指令和指令地址和所有的寄存器内容。 

          <LI>logfile=filename 其值是一个字符串,表示用于记录信息的文件名 
          <LI>start=number1 其值是一个&gt;=0的十进制整数,表示系统执行到第number1条指令时开始进行记录 
          <LI>end =number2其值是一个&gt;=0的十进制整数,表示系统执行到第number2条指令时停止记录 
          <LI>length =number3其值是一个&gt;=0的十进制整数,表示只记录系统最近执行的number3条指令时的信息 
        </LI></UL>
        <P>格式:<BR>log: logon=0, logfile=/tmp/sk1.log, start=100000, end=200000, 
        length=100</P>
        <P><A name=IDA2PWNB><B>图 0 1 SkyEye硬件模拟逻辑结构图</B></A><BR><IMG height=422 
        alt="图 0 1 SkyEye硬件模拟逻辑结构图" 
        src="SkyEye硬件模拟平台,第二部分 安装与使用.files/image001.gif" width=440 border=0></P>
        <P>SkyEye目标模拟模块模拟的硬件逻辑结构图如图 0-1所示。</P></LI></UL>
      <P><A name=IDANIPNB><SPAN class=atitle2>二. 安装使用SkyEye</SPAN></A><BR></P>
      <P><A name=IDASIPNB><SPAN class=atitle3>1. 
      SkyEye的安装</SPAN></A><BR>目前SkyEye在Linux操作系统下运行得很好, 
      SkyEye通过MingW或cywgin软件也可以在Windows环境中运行。</P>
      <P>下面我们以在RedHat 9.0环境的SkyEye安装为例:</P>
      <P>首先需要从解开skyeye-x.x.x.src.tar.bz2软件包(x.x.x代表SkyEye的版本号)开始,按照软件包中的SkyEye.README或README文件中介绍的步骤进行(下面命令中的"#"是shell提示符,用户不用输入):</P>
      <P>(1) 
      解压源码包(假定skyeye-x.x.x.src.tar.bz2放在本机的"/usr/src"目录下),会在当前目录生成一个skyeye的目录<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE>#cd /usr/src</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># tar xjvf 
      skyeye-x.x.x.src.tar.bz2</CODE></P>
      <P>(2) 进入解压SkyEye目录,配置SkyEye<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">#cd skyeye<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">如果是SkyEye 
      0.6.0以前的版本,运行下面的命令进行配置:<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># ./configure 
      --target=arm-elf --prefix=/usr/local --without-gtk-prefix 
      --without-gtk-exec-prefix --disable-gtktest</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">如果你的SkyEye版本大于0.6.0,则带有LCD仿真支持。为了增加对LCD仿真的支持,则运行如下命令:<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># ./configure 
      --target=arm-elf --prefix=/usr/local</CODE></P>
      <P>(3) 然后是编译和安装(正确执行完下面的指令且命令正常结束后,系统中的/usr/local/bin/skyeye 
      执行程序就是安装好的SkyEye软件。)</P><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># make</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># make 
      install</CODE><BR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">
      <P>在编译安装过程中,须注意以下几点:</P>
      <UL xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">
        <LI>如果你使用的是Mandrake Linux,那么有可能你在编译SkyEye时会出现有关readline, ncurse, 
        termcap等库的一些错误,那么你需要运行下面的命令:<BR><CODE>ln -s 
        /usr/include/ncurses/termcap.h /usr/local/include/termcap.h</CODE> 
        <LI>然后再重新编译 
        <LI>如果你使用的是Debian Linux, 不要用gcc 2.95 或 gcc 3.0, 要使用gcc 3.2或更高版本。 
        <LI>在你系统中所使用的gcc 版本号应该要大于或等于2.96 
        <LI>如果SkyEye版本号大于0.6.0, 那么你需要在你的系统中安装GTK (LCD模拟要用到) 。 </LI></UL>
      <P><A name=IDAKKPNB><SPAN class=atitle2>2. 
      SkyEye的使用</SPAN></A><BR>下面我们以SkyEye模拟基于Atmel 
      AT91X40的开发板,并运行μClinux为例来讲解SkyEye的具体使用。</P>
      <P><A name=IDAQKPNB><SPAN 
      class=atitle3>第1步 安装交叉编译环境并配置μClinux</SPAN></A><BR>先安装交叉编译器。注意这里最好用root用户来执行如下操作。将arm-elf-tools-20011219.tar.gz(20011219是该工具的产生时间,也可以选择更新的arm-elf-tools。)在本机的根目录下用tar命令解开(假定arm-elf-tools-20011219.tar.gz放在本机的根目录"/"下)。具体命令(下面命令中的"#"是shell提示符,用户不用输入)如下:</P><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE>#cd /</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># tar /zxvf 
      arm-elf-tools-20011219.tar.gz</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">
      <P>然后将uClinux-dist-20020927.tar.gz(假定该软件包放在本机的根目录下)解开,比如解开在/usr/src/uClinux-dist/下,需要执行如下命令:</P><CODE># 
      cd /usr/src</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># tar zxvf 
      /uClinux-dist-20020927.tar.gz</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">
      <P>然后在/usr/src/uClinux-dist/目录下执行如下命令:</P>
      <UL xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">
        <LI>在图形方式下可用命令<BR><CODE># make xconfig </CODE><BR>
        <LI>在命令行方式下可用命令<BR><CODE># make menuconfig</CODE><BR></LI></UL>
      <P>在这两种界面下,在vendor/product选项中选择GDB/ARMulator,kernel版本选择2.4.x,其它选项不变,然后保存配置退出,即选择save 
      and exit选项。</P>
      <P><A name=IDAZLPNB><SPAN class=atitle3>第2步 
      编译生成μClinux和包含应用程序的文件系统</SPAN></A><BR><B 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">方案A</B></P>
      <P>如果要生成带调试信息的linux kernel执行文件,在第一步执行完后,继续执行如下命令:<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># make dep; make 
      linux</CODE><BR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">这时在/usr/src/uClinux-dist/linux-2.4.x目录下生成具有ELF执行文件格式的linux内核文件。到这一步还没有生成文件系统,为了生成文件系统,还需要执行如下命令:<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># make romfs; make 
      image</CODE><BR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">如果在/usr/src/uClinux-dist/images/下存在文件 
      romfs.img,表示文件系统生成成功。</P>
      <P><B xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">方案B</B></P>
      <P>如果想一步生成带调试信息的linux kernel执行文件和linux kenel 
      执行文件映像和磁盘映像文件romfs.img,可简单地运行命令: <BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># make dep; 
      make</CODE><BR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">就行了。可查看/usr/src/uClinux-dist/images/下是否有文件 
      romfs.img等在/usr/src/uClinux-dist目录下,如果有,表示编译安装成功。</P>
      <P><A name=IDAYMPNB><SPAN 
      class=atitle3>第3步 用SkyEye运行和调试μClinux内核</SPAN></A><BR>假定SkyEye的工作目录位于/usr/src/uClinux-dist下,首先要进行一些准备工作:</P>
      <P>在工作目录下建立专门用于基于AT91X40开发板的SkyEye硬件配置文件skyeye.conf。一个简单的方法是从SkyEye软件包中的README文件中截取一块内容(以"FOR 
      AT91 (1) special for 
      uclinux"开始的一行,从它下面第三行开始截取,共取9行)作为skyeye.conf的内容,具体内容如下:</P><A 
      name=IDA5MPNB><B></B></A><BR>
      <TABLE cellSpacing=0 cellPadding=5 width="100%" bgColor=#cccccc 
        border=1><TBODY>
        <TR>
          <TD><PRE><CODE>
cpu: arm7tdmi
mach: at91
mem_bank: map=M, type=RW, addr=0x00000000, size=0x00004000
mem_bank: map=M, type=RW, addr=0x01000000, size=0x00400000
mem_bank: map=M, type=R,  addr=0x01400000, size=0x00400000, file=./boot.rom
mem_bank: map=M, type=RW, addr=0x02000000, size=0x00400000
mem_bank: map=M, type=RW, addr=0x02400000, size=0x00008000
mem_bank: map=M, type=RW, addr=0x04000000, size=0x00400000
mem_bank: map=I, type=RW, addr=0xf0000000, size=0x10000000
</CODE></PRE></TD></TR></TBODY></TABLE>
      <P>这样我们可以通过如下命令看看在/usr/src/uClinux-dist目录下的skyeye.conf文件是否与上面的内容一致:<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE># more 
      /usr/src/uClinux-dist/skyeye.conf</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">然后是建立文件系统的联接,需要在目录/usr/src/uClinux-dist目录下执行如下命令:<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/"><CODE>#ln -s 
      images/romfs.img boot.rom</CODE><BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">这主要是与skyeye.conf中的内容保持一致,大家可注意skyeye.conf中的第5行。<BR 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:dw="http://www.ibm.com/developerWorks/">完成上述准备工作后,就可以用SkyEye来运行和调试μClinux内核了,我们可以尝试如下命令("#"和"(SkyEye)"后面跟着的字符串是需要使用者输入的):</P><A 
      name=IDAWNPNB><B></B></A><BR>
      <TABLE cellSpacing=0 cellPadding=5 width="100%" bgColor=#cccccc 
        border=1><TBODY>
        <TR>
          <TD><PRE><CODE>
# cd /usr/src/uClinux-dist
# /usr/local/bin/skyeye linux-2.4.x/linux
(SkyEye)target sim
cpu info: armv3, arm7tdmi, 41007700, fff8ff00, 0 
mach info: name at91, mach_init addr 0x813ebc0
SKYEYE: use arm7100 mmu ops
Loaded ROM ./boot.rom
Connected to the simulator.
(SkyEye)load
Loading section .init, size 0xa000 vma 0x1000000
Loading section .text, size 0xc5cb0 vma 0x100a000
Loading section .data, size 0x8320 vma 0x10d0000
Start address 0x1000000
Transfer rate: 7077504 bits/sec.
(SkyEye)run
Starting program: /usr/src/uClinux-dist/linux-2.4.x/linux 
Linux version 2.4.19-uc1 (root@hpclab.cs.tsinghua.edu.cn) 
(gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)
(uClinux XIP and shared lib patches from http://www.snapgear.com/)) #1 Sun Sep 5 12:00:39 HKT 2004
Processor: Atmel AT91M40xxx revision 0
Architecture: EB01

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -