位置:51电子网 » 技术资料 » 嵌入式系统

基于NIOS嵌入式软核的硬盘录像机的设计与实现

发布时间:2008/5/27 0:00:00 访问次数:393

  摘要:本文以硬盘录像机的设计为例, 介绍了nios 嵌入式软核的工作流程、开发步骤和使用方法。

  关键词: nios ;嵌入式处理器;硬盘录像

  随着现场可编程逻辑阵列( fpga) 技术的日益成熟,基于片上的可编程( sopc)的嵌入式处理器受到越来越多的关注。特别是altera公司推出的nios嵌入式处理器软核, 通过软件编程的方法可灵活地实现嵌入式处理器的功能, 并且针对fpga进行性能优化, 可以大大提高系统性能。此外,nios还具有片上调试功能,因此便于系统的设计和调试.本文以硬盘录像机为例,研究了nios对外部接口设备进行控制的方法,其中包括i2c接口的控制、ide接口的控制等。

1 nios开发方法介绍

  nios的软硬件开发流程如图1 所示, 下面介绍其具体开发步骤。流程的第一步是设计规划。它需要根据系统设计要求, 划分好各个软硬件模块。完整的基于nios的sopc系统是一个软硬件复合的系统, 在开发时可以分为硬件、软件两个部分。在实际设计过程中, 往往会遇到这样一种情况: 所需要的功能既可以用软件方式实现, 也可以用纯硬件逻辑加以实现。例如, 在系统中需要8位7段码数码管显示时, 可以用fpga中的可编程逻辑设计一个动态扫描逻辑来实现显示, 也可以通过编写动态扫描程序对pio进行操作来完成上述功能。若用硬件方式实现, 显然是要占用额外的硬件资源, 但是, 编写软件较为容易, 系统工作速度不受影响; 反之, 用软件方式实现, 可以不增加硬件逻辑, 但是动态扫描需要占用cpu的处理时间, 这增加了软件编写的复杂度。具体采用什么方式是与系统设计要求有关的。因此在设计规划时, 就要确定哪些功能用硬件实现, 哪些功能用软件实现。通常用软件实现时, 其设计容易修改, 查错也比较容易, 且基本上不增加占用的硬件资源。所以在设计规划时, 当需要的软硬件代价相当并且性能保证的情况下, 软件实现是被优先考虑的。



  确定好软硬件模块的划分后, 就可以开始具体的设计过程了。通常, 嵌入式系统开发中cpu是不可更改的, 因此外围设备的变动也受到cpu的限制, 甚至整个嵌入式系统的硬件已经固定, 难以更改(如pc104 的开发)。因而, 通常的嵌入式开发中, 更多的是pcb设计及软件开发。与通常的嵌入式系统开发不同, 由于nios是一个可灵活定制的cpu,它的外设是可选的ip 核或自定制逻辑, 所以可以根据系统设计要求, 通过sopc builder向导式的界面定制裁剪适当的sopc系统。鉴于上述nios开发的特点, 在设计规划后,nios的开发流程分为硬件开发与软件开发两大部分。

  nios 的硬件设计流程就是定制合适的cpu和外设, 在sopc builder和quartusii中完成。在这里可以灵活定制nios cpu的各个特性甚至指令, 可以使用altera提供的大量的ip core来加快开发者开发nios外设的速度,提高外设的性能。同时, 也可以使用第三方的ip core, 或者使用vhdl、verilog 来自己定制外设。

  完成nios的硬件开发后, sopc builder可以帮助开发者生成相应的sdk( 软件开发包) 。这是由于在硬件开发中的nios cpu及其外设构成的系统是自定制的, 存储器、外设地址的映射等各不相同, 需要的sdk也应是专有的。

  sopc builder可自动生成sdk。在生成的sdk 基础上, 开发者可以进入软件开发流程。在这个部分, 开发者面对的嵌入式系统是自己定制的、裁剪过的, 因此受到硬件的局限会小一些。开发者可以使用汇编语言、c 或c++语言来进行嵌入式程序设计, 使用gnu工具或其他第三方工具进行程序的编译连接以及调试。

2 针对硬盘录像机的nios 嵌入式处理器设计

  在硬盘录像机中涉及到图像采集、图像压缩、图像存储三个主要部分, 因此在设计外部接口时需要考虑到这三部分中芯片控制所需要的接口。

  (1)图像采集部分。图像采集部分使用saa7113完成视频信号的采集。该芯片是可编程视频处理芯片, 采用cmos工艺, 通过简单的i2c 总线可以对其实现编程控制。它将不同制式的模拟信号统一成相同的数字标准, 采用itu-r bt.601 格式, 采样时对亮度信号和两个色差信号分别编码, 对不同制式信号采用单一的取样频率, 而且和任何模拟系统的彩色副载波频率无关, 因此在分量系统中不再包含任何副载波。取样频率定为13.5mhz, 它也是对亮度信号y 的取样频率。由于色度信号的带宽远比亮度信号的带宽窄, 因而对色度信号u 和v 的取样率较y 减半, 为6.75mhz。每个数字有效行分别有720 个亮度取样点和360×2 个色差信号取样点。对每个分量的取样点进行均匀量化。对每个取样进行8 位的pcm编码。

  (2)图像压缩部分。本系统采用硬件压缩方式完成视频图像的jpeg 压缩。通常在视频监控系统中使用motion-jpeg(mjpeg)技术, mjpeg 压缩芯片将a/d 转换芯片输入的yuv 格式的数据进行mjpeg 格式的压缩。mjpeg 由jpeg 图像连接组成, 相对jpeg 图像, 每幅都有自己的量化表和huffman码表。mjpeg可以

  摘要:本文以硬盘录像机的设计为例, 介绍了nios 嵌入式软核的工作流程、开发步骤和使用方法。

  关键词: nios ;嵌入式处理器;硬盘录像

  随着现场可编程逻辑阵列( fpga) 技术的日益成熟,基于片上的可编程( sopc)的嵌入式处理器受到越来越多的关注。特别是altera公司推出的nios嵌入式处理器软核, 通过软件编程的方法可灵活地实现嵌入式处理器的功能, 并且针对fpga进行性能优化, 可以大大提高系统性能。此外,nios还具有片上调试功能,因此便于系统的设计和调试.本文以硬盘录像机为例,研究了nios对外部接口设备进行控制的方法,其中包括i2c接口的控制、ide接口的控制等。

1 nios开发方法介绍

  nios的软硬件开发流程如图1 所示, 下面介绍其具体开发步骤。流程的第一步是设计规划。它需要根据系统设计要求, 划分好各个软硬件模块。完整的基于nios的sopc系统是一个软硬件复合的系统, 在开发时可以分为硬件、软件两个部分。在实际设计过程中, 往往会遇到这样一种情况: 所需要的功能既可以用软件方式实现, 也可以用纯硬件逻辑加以实现。例如, 在系统中需要8位7段码数码管显示时, 可以用fpga中的可编程逻辑设计一个动态扫描逻辑来实现显示, 也可以通过编写动态扫描程序对pio进行操作来完成上述功能。若用硬件方式实现, 显然是要占用额外的硬件资源, 但是, 编写软件较为容易, 系统工作速度不受影响; 反之, 用软件方式实现, 可以不增加硬件逻辑, 但是动态扫描需要占用cpu的处理时间, 这增加了软件编写的复杂度。具体采用什么方式是与系统设计要求有关的。因此在设计规划时, 就要确定哪些功能用硬件实现, 哪些功能用软件实现。通常用软件实现时, 其设计容易修改, 查错也比较容易, 且基本上不增加占用的硬件资源。所以在设计规划时, 当需要的软硬件代价相当并且性能保证的情况下, 软件实现是被优先考虑的。



  确定好软硬件模块的划分后, 就可以开始具体的设计过程了。通常, 嵌入式系统开发中cpu是不可更改的, 因此外围设备的变动也受到cpu的限制, 甚至整个嵌入式系统的硬件已经固定, 难以更改(如pc104 的开发)。因而, 通常的嵌入式开发中, 更多的是pcb设计及软件开发。与通常的嵌入式系统开发不同, 由于nios是一个可灵活定制的cpu,它的外设是可选的ip 核或自定制逻辑, 所以可以根据系统设计要求, 通过sopc builder向导式的界面定制裁剪适当的sopc系统。鉴于上述nios开发的特点, 在设计规划后,nios的开发流程分为硬件开发与软件开发两大部分。

  nios 的硬件设计流程就是定制合适的cpu和外设, 在sopc builder和quartusii中完成。在这里可以灵活定制nios cpu的各个特性甚至指令, 可以使用altera提供的大量的ip core来加快开发者开发nios外设的速度,提高外设的性能。同时, 也可以使用第三方的ip core, 或者使用vhdl、verilog 来自己定制外设。

  完成nios的硬件开发后, sopc builder可以帮助开发者生成相应的sdk( 软件开发包) 。这是由于在硬件开发中的nios cpu及其外设构成的系统是自定制的, 存储器、外设地址的映射等各不相同, 需要的sdk也应是专有的。

  sopc builder可自动生成sdk。在生成的sdk 基础上, 开发者可以进入软件开发流程。在这个部分, 开发者面对的嵌入式系统是自己定制的、裁剪过的, 因此受到硬件的局限会小一些。开发者可以使用汇编语言、c 或c++语言来进行嵌入式程序设计, 使用gnu工具或其他第三方工具进行程序的编译连接以及调试。

2 针对硬盘录像机的nios 嵌入式处理器设计

  在硬盘录像机中涉及到图像采集、图像压缩、图像存储三个主要部分, 因此在设计外部接口时需要考虑到这三部分中芯片控制所需要的接口。

  (1)图像采集部分。图像采集部分使用saa7113完成视频信号的采集。该芯片是可编程视频处理芯片, 采用cmos工艺, 通过简单的i2c 总线可以对其实现编程控制。它将不同制式的模拟信号统一成相同的数字标准, 采用itu-r bt.601 格式, 采样时对亮度信号和两个色差信号分别编码, 对不同制式信号采用单一的取样频率, 而且和任何模拟系统的彩色副载波频率无关, 因此在分量系统中不再包含任何副载波。取样频率定为13.5mhz, 它也是对亮度信号y 的取样频率。由于色度信号的带宽远比亮度信号的带宽窄, 因而对色度信号u 和v 的取样率较y 减半, 为6.75mhz。每个数字有效行分别有720 个亮度取样点和360×2 个色差信号取样点。对每个分量的取样点进行均匀量化。对每个取样进行8 位的pcm编码。

  (2)图像压缩部分。本系统采用硬件压缩方式完成视频图像的jpeg 压缩。通常在视频监控系统中使用motion-jpeg(mjpeg)技术, mjpeg 压缩芯片将a/d 转换芯片输入的yuv 格式的数据进行mjpeg 格式的压缩。mjpeg 由jpeg 图像连接组成, 相对jpeg 图像, 每幅都有自己的量化表和huffman码表。mjpeg可以
相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!