1. fpga
    +关注
    关注 226
    文章 6434
    浏览量 354355
  2. 嵌入式
    +关注
    关注 79
    文章 3606
    浏览量 82785
  3. Linux
    +关注
    关注 26
    文章 2238
    浏览量 89882

FPGA开发从逻辑设计做起,结合软+硬+系统很重要

FPGA2嵌入式 2018-02-05 10:49 次阅读
    大多数FPGA设计者从逻辑设计做起,对软件级设计接触不多,但目前的项目中都少不了处理器软件C的设计,下面接着看下《UltraFast 嵌入式设计方法指南》中关于软件设计方面的内容,主要分3部分:软件设计需要考虑的事项、设计流程及调试等。 1. 软件设计考虑事项     软件设计时,需要先搭建一个处理器到系统中,处理器可以是硬核(如ZYNQ的ARM),也可以是软核(如NIOS II),所有的内容均围绕处理器方面设计展开:处理器配置,操作系统选择,库和中间件,启动加载器,软件开发工具(SDK)。
  1. 处理器配置:配置核心频率、多处理单元协调和数据程序存储空间分配、中断等;
  2. 操作系统选择:选择操作系统活着裸跑;
  3. 库和中间件:方便设计者高效的使用底层硬件的过渡层接口;
  4. 启动加载器:方便操作系统的BOOT设计;
  5. 软件开发工具:C开发环境,类似NIOS IDE开发环境。
    当我们自己在逻辑部分设计了一个底层逻辑后通过接口(一般是总线接口)连接到处理器后,也可以自定义自己的操作接口,通过SDK来操作底层逻辑。如三角函数处理器运算太慢,可以在逻辑中设计一个三角函数后SDK中只需将运算的数据写入对应reg中后得到运算结果,这就实现了硬软件协调处理功能。 2. 软件设计流程     软件设计流程如下图: 其中:
  1. 板启动开发工作包括开发低级固件、设置启动次序、针对接口和外设的基本测试,划分了下列阶段:PS 初始化 ,PL 配置 ,储存器和外设测试,软件和硬件调试;
  2. 驱动开发为 SoC 和板载外设开发软件驱动,用于为OS或裸机应用等更高软件层建立接口;
  3. 针对裸机或 Linux 或 FreeRTOS 等操作系统开发出了相关可运行应用。
    设计中要注重层次,多学习C++等高级语言设计技巧,这样可以保证设计的简洁和可维护性,一般FPGA对C设计接触比较少从业者写的C代码一团乱麻。 3. 调试     系统调试中,PL部分就是我们常用的Modelsim仿真+在线逻辑分析仪等,PS部分就是断点、单步,查看内存等。关于调试的经验技巧下次搞篇文章分享。     软件调试中,需要在处理器配置配置合适的的选项,SDK中灵活使用,同时需要注意:调试完成得到最终发行版本时,记得去掉在线逻辑分析仪和处理器JTAG配置,因为这样会省掉不少资源,时序和功耗当然会更好 4. 其它     理解启动加载器的流程对理解软硬件协同+Linux有很大帮助:     在为SoC 加电时,启动过程从BootROM 开始。启动过程先从片上储存器 (OCM) 加载然后启动执行第一阶段启动加载器 (FSBL)。FSBL负责配置具体的初始化。     然后根据软件架构,第二阶段启动加载器,如使用嵌入式 Linux 时的 U-Boot 进行初始化并执行。 FSBL 和/或 SSBL 启动 RTOS 或嵌入式 Linux 以及应用代码。 如果没有操作系统,则是裸跑,好多步都没有。简单说裸跑就是51单片机C程序开发,而跑系统则是ARM高端应用程序开发,原理性相差不大,可以自己查阅资料了解,不需要马上都懂,因为随着时间和经验的积累,这些你会慢慢要了解并使用巩固。 5. 总结     FPGA大多是逻辑开发者,但只做逻辑的话局限性太大,而且现在的趋势也是FPGA软件话了,SDSOC就是证明。所以,我们应该提前扩充知识面,而且你会发现复杂软件设计和操作系统经验上有很多技巧也可以借鉴,更好地借鉴能帮助我们软+硬+系统结合,设计出更有成就感的架构应用于项目中。
原文标题:《UltraFast 嵌入式设计方法指南》(3)——软件级 文章出处:【微信号:fpga234,微信公众号:FPGA2嵌入式】欢迎添加关注!文章转载请注明出处。
收藏 人收藏
分享:

评论

相关推荐

联想提出预装单独的国产Linux系统的建议

昨天有报道称,联想在中央某采购中心关于预装国产操作系统的投票会上投了反对票一事属实。联想昨晚回应记者....
的头像 88lifa利发国际娱乐网工程师 发表于 05-27 05:31 184次阅读
联想提出预装单独的国产Linux系统的建议

加速到来的未来_通过定制化软件提高工作流程

近日,在 NIWEEK 2018上, NI 市场副总裁Luke Schreier做了题为《加速到来的....
的头像 88lifa利发国际娱乐网工程师 发表于 05-26 09:35 391次阅读
加速到来的未来_通过定制化软件提高工作流程

看LabVIEW之父谈论未来LabVIEW的软件架构

日前,在 NIWEEK 2018上, NI 共同创始人、Fellow、有着 LabVIEW 之父称号....
的头像 88lifa利发国际娱乐网工程师 发表于 05-26 09:25 743次阅读
看LabVIEW之父谈论未来LabVIEW的软件架构

FPGA发展阶段: 容量和速度提升_功耗和价格降低

探索FPGA 发展的不同时代 作者:Steve Trimberger,赛灵思公司,美国电子电气工程师....
的头像 88lifa利发国际娱乐网工程师 发表于 05-26 01:52 163次阅读
FPGA发展阶段: 容量和速度提升_功耗和价格降低

基于Linux操作系统的服务器运行的同时,也会表征出各种各样参数信息

最后是每个程序的资源占用列表,其中 CPU 的使用率是所有 CPU core 占用率的总和。通常执行....
的头像 马哥Linux运维 发表于 05-25 17:28 327次阅读
基于Linux操作系统的服务器运行的同时,也会表征出各种各样参数信息

嵌入式工程师为何要选用FPGA?

在一个领域中,如果唯一不变的是变化,那么不需要对电子技术和设计方法的发展变化做多少回顾,就能见证到变....
的头像 嵌入式资讯精选 发表于 05-25 16:53 367次阅读
嵌入式工程师为何要选用FPGA?

FPGA的DCM时钟管理单元概述

有些FPGA学习者,看Xilinx的Datasheet会注意到Xilinx的FPGA没有PLL,其实....
的头像 FPGA学习交流 发表于 05-25 15:43 340次阅读
FPGA的DCM时钟管理单元概述

NXP i.MX6UL嵌入式开发板WIFI(型号:RTL8723BU) 驱动简易移植及测试

发表于 05-25 14:49 181次阅读
NXP i.MX6UL嵌入式开发板WIFI(型号:RTL8723BU) 驱动简易移植及测试

嵌入式Stm32按键输入控制LED灯

发表于 05-25 14:24 201次阅读
嵌入式Stm32按键输入控制LED灯

聊一聊FPGA的片内资源相关知识

大家好,到了每日学习的时间了。今天我们来聊一聊FPGA的片内资源相关知识。 主流的FPGA仍是基于查....
的头像 FPGA学习交流 发表于 05-25 14:11 526次阅读
聊一聊FPGA的片内资源相关知识

研华嵌入式无风扇工业电脑 助力设备自动化升级

捻线机是将多股细纱捻成一股的纺织机械设备。作用是将纱或并合后股纱制品加工成线型制品、供织造和针织用线....
发表于 05-25 11:25 30次阅读
研华嵌入式无风扇工业电脑 助力设备自动化升级

初学者是选ARM7还是ARM9?uCOS还是Linux?

本文首先介绍了ARM7、ARM9和uCOS及Linux这四者的概念,其次阐述了ARM7与ARM9的区....
发表于 05-25 11:16 105次阅读
初学者是选ARM7还是ARM9?uCOS还是Linux?

请问你们可以提供AM1808最小开发板的原理图?可以烧入嵌入式linux操作系统,可以正常启动嵌入式linux。

发表于 05-25 10:41 199次阅读
请问你们可以提供AM1808最小开发板的原理图?可以烧入嵌入式linux操作系统,可以正常启动嵌入式linux。

μCOS代码移植到了RT-Thread工程笔记

公司项目原先使用μCOS-II,但是μCOS存在商业使用付费问题,故而我们转向用国产开源免费RTOS....
的头像 88lifa利发国际娱乐网 发表于 05-25 09:18 548次阅读
μCOS代码移植到了RT-Thread工程笔记

在嵌入式系统中,主控MCU集成多种片上外设设计

本文导读随着MCU的快速发展,MCU内部往往集成了多种外设。同种外设在不同MCU中的实现可能千差万别....
的头像 ZLG致远电子 发表于 05-25 09:04 687次阅读
在嵌入式系统中,主控MCU集成多种片上外设设计

基于北斗卫星系统的机载高速摄像机时间同步器

在民用飞机飞行试验中,为了保证图像测试数据的准确可靠,机上图像测试系统中不同测试设备时间需要严格的统....
的头像 电子设计 发表于 05-25 08:24 283次阅读
基于北斗卫星系统的机载高速摄像机时间同步器

在8168 DVR-RDK中,现在生成的.out 只可以在开发板上运行的,怎么修改能够生成可在linux的可调试程序?

发表于 05-25 08:12 39次阅读
在8168 DVR-RDK中,现在生成的.out 只可以在开发板上运行的,怎么修改能够生成可在linux的可调试程序?

请问FPGA可以和DSP的vpif直接相连么?

发表于 05-25 05:07 49次阅读
请问FPGA可以和DSP的vpif直接相连么?

硅传433M无线透传模块CC1310规格书

发表于 05-24 17:27 102次阅读
硅传433M无线透传模块CC1310规格书

基于AM335x平台 Linux系统上运行PRU程序(下篇)

发表于 05-24 16:56 52次阅读
基于AM335x平台 Linux系统上运行PRU程序(下篇)

FPGA设计中为什么自适应均衡器是收发器设计关键的两大原因

在,大家都认为串行链路的构建难度大,尤其是对10Gb以上的系统,您必须解决系统中的插入损耗,反射串扰....
的头像 亚德诺半导体(ADI)视频 发表于 05-24 16:52 101次阅读
FPGA设计中为什么自适应均衡器是收发器设计关键的两大原因

基于AM335x平台 Linux系统上运行PRU程序(上篇)

发表于 05-24 16:40 27次阅读
基于AM335x平台 Linux系统上运行PRU程序(上篇)

大神教你:嵌入式LWIP网络客户端设计

嵌入式技术的兴起使得传统的基于PC机的互联网技术优势不再,嵌入式网络客户端与服务端技术成为热点,而该....
发表于 05-24 16:20 162次阅读
 大神教你:嵌入式LWIP网络客户端设计

英特尔 FPGA释放数据潜能 加速从云到边缘的成长

英特尔® 现场可编程门阵列(FPGA)继续在市场中保持强劲的发展势头。配合英特尔®处理器,FPGA释....
的头像 人间烟火123 发表于 05-24 16:17 708次阅读
英特尔 FPGA释放数据潜能 加速从云到边缘的成长

Xilinx FPGA在仪器仪表中的应用

2013首届仪器仪表器件选型技术研讨会(http://www.eepw.com.cn/event/a....
的头像 亚德诺半导体(ADI)视频 发表于 05-24 15:53 136次阅读
Xilinx FPGA在仪器仪表中的应用

ADI在线研讨会:应对电机控制嵌入式设计挑战

本研讨会将介绍新的设计方法和设计流程以及一个完整的开放式系统设计,以便实现各种终端解决方案。
的头像 亚德诺半导体(ADI)视频 发表于 05-24 15:47 132次阅读
ADI在线研讨会:应对电机控制嵌入式设计挑战

Python快速入门方法

发表于 05-24 15:37 178次阅读
Python快速入门方法

基于嵌入式Linux的语音识别系统硬软件设计详细讲解教程

该设计运用三星公司的S3C2440,结合ICRoute公司的高性能语音识别芯片LD3320,进行了语....
发表于 05-24 15:15 169次阅读
基于嵌入式Linux的语音识别系统硬软件设计详细讲解教程

linux标准学习教程,让你学习linux有方法

发表于 05-24 15:06 101次阅读
linux标准学习教程,让你学习linux有方法

赛灵思Virtex-7 GTX收发器演示

赛灵思Virtex-7 GTX收发器演示
的头像 亚德诺半导体(ADI)视频 发表于 05-24 13:49 186次阅读
赛灵思Virtex-7 GTX收发器演示

利用 AccelDSP 和 System Generator for DSP™ 加快 FPGA 设计

此次为期30分钟的视频演示介绍了 Xilinx 提供的 DSP 设计工具。我们从带有浮点 MATLA....
的头像 亚德诺半导体(ADI)视频 发表于 05-24 13:47 178次阅读
利用 AccelDSP 和 System Generator for DSP™ 加快 FPGA 设计

首款内置ARM硬核的FPGA

Zynq出来有一定市场,但是这个市场不是传统FPGA的主流市场,而是为了和微处理抢一些控制领域的市场....
的头像 FPGA极客空间 发表于 05-24 11:48 411次阅读
首款内置ARM硬核的FPGA

H.264视频编解码FPGA超低延迟解决方案

具体特点为:1.支持各种分辨率;2.支持各种帧率;3.编解码延迟低于60ms;4.占用FPGA资源小....
发表于 05-24 11:45 98次阅读
H.264视频编解码FPGA超低延迟解决方案

岁月在70后电子工程师身上留下了什么?

有人问这个键盘难道没有擦过吗?不是的,是擦不掉的岁月痕迹。如果有注意到细节的朋友会发现,工程师什么键....
的头像 工程师人生 发表于 05-24 10:02 170次阅读
岁月在70后电子工程师身上留下了什么?

嵌入式Linux主设备号和次设备号的获取

静态分配设备号,就是驱动程序开发者,静态地指定一个设备号。对于一部分常用的设备,内核开发者已经为其分....
的头像 嵌入式ARM 发表于 05-23 17:18 198次阅读
嵌入式Linux主设备号和次设备号的获取

比较 Xilinx® Virtex®-7FPGA GTH收发器和Altera Stratix V GX收发器的均衡能力

设计人员呼吁提升10G+ 芯片到芯片和背板性能, 依赖接收机均衡来补偿信号失真。观看视频, 并排比较....
的头像 亚德诺半导体(ADI)视频 发表于 05-23 15:47 149次阅读
比较 Xilinx® Virtex®-7FPGA GTH收发器和Altera Stratix V GX收发器的均衡能力

Vivado UltraFast设计方法中文版讲解

这个培训将会深度介绍适于Xililnx 可编程门阵列的HDL代码风格, 产生和验证时序约束的正确方法....
的头像 亚德诺半导体(ADI)视频 发表于 05-23 15:47 177次阅读
Vivado UltraFast设计方法中文版讲解

XILINX推出All Programmable抽象化计划,加快开发速度达15倍

Xilinx 宣布启动一项将软件、模型、平台和基于 IP 的设计环境融为一体的抽象化计划,致力于让系....
的头像 亚德诺半导体(ADI)视频 发表于 05-23 15:47 163次阅读
XILINX推出All Programmable抽象化计划,加快开发速度达15倍

嵌入式C通用延时驱动的编写方法

在嵌入式C编程中,免不了要用到软件延时。这一般通过循环语句实现。通过控制循环语句的循环次数,便可获得....
发表于 05-23 15:30 57次阅读
嵌入式C通用延时驱动的编写方法

TI-AM335X-QT-4.8.4移植及qt应用手册.pdf

基于TI AM335x处理器!QT 4.8.4移植应用手册!!!
发表于 05-23 10:16 25次阅读
TI-AM335X-QT-4.8.4移植及qt应用手册.pdf

视壮RK3288板卡看视频既高清又流畅

视壮RK3288板卡看视频既高清又流畅最近用了一款视壮科技的rk3288板卡,研究了一下,看视频频既....
发表于 05-23 09:49 150次阅读
视壮RK3288板卡看视频既高清又流畅

Xilinx VIRTEX E双电压FPGA稳压器解决方案

该应用报告为工程师设计Xilinx 2.5-V和1.8V VirTEX多电压FPGA产品提供参考。它....
发表于 05-23 09:48 25次阅读
Xilinx VIRTEX E双电压FPGA稳压器解决方案

FPGA几大厂商介绍,你知道的有哪些呢?

前言:有的同学在学习fpga,但是你知道fpga的几大厂商有哪些么,今天我们就来聊聊比较知名的fpg....
的头像 FPGA学习交流 发表于 05-23 09:24 518次阅读
FPGA几大厂商介绍,你知道的有哪些呢?

如何将FPGA程序固化到外部Flash存储器

在我们刚开始学习FPGA的时候,我们一般都是将编译后生成的.sof文件(针对于Altera器件)通过....
的头像 FPGA学习交流 发表于 05-23 09:22 822次阅读
如何将FPGA程序固化到外部Flash存储器

M105x系列跨界硬件核心板嵌入式开发

迄今为止,知道AWorks的开发者越来越多,却只有极少数了解其精髓,在即将发布之际,周立功教授及其团....
的头像 周立功单片机 发表于 05-23 09:18 685次阅读
M105x系列跨界硬件核心板嵌入式开发

JTAG的先进经验和系统设计详析

JTAG总线最初用于板级制造测试,已经发展成为一种多用途总线,用于FPGA、Flash和处理器仿真的....
发表于 05-22 17:56 33次阅读
JTAG的先进经验和系统设计详析

莱迪思半导体超低功耗FPGA解决方案助力机器学习面向大众市场

全新的毫瓦级功耗FPGA解决方案为机器学习推理在大众市场物联网应用中实现快速部署创造机遇。
的头像 人间烟火123 发表于 05-22 17:04 698次阅读
莱迪思半导体超低功耗FPGA解决方案助力机器学习面向大众市场

荐读:如何学习FPGA?为什么你会觉得FPGA难学?

很多人问我该如何去学FPGA,那么今天咱们就来聊一聊。 一、入门首先要掌握HDL(HDL=veril....
的头像 FPGA学习交流 发表于 05-22 10:43 902次阅读
荐读:如何学习FPGA?为什么你会觉得FPGA难学?

ARM处理器在节能方面具有哪些优势

许多嵌入式ARM 处理器的系统都是采用电池供电的方式。因此,A R M 被公认为是处理器领域的“低功....
发表于 05-22 10:28 43次阅读
ARM处理器在节能方面具有哪些优势

OMAP35x Linux PSP数据表

本文档提供了OMAP35X Linux PSP包的一部分的设备驱动程序的概述和性能数据。
发表于 05-22 09:24 30次阅读
OMAP35x Linux PSP数据表

通过这10个基础命令开始掌握Linux命令行

如果你对 Linux 感兴趣,但是一直在使用 PC 或者 Mac 桌面,你可能想知道你需要知道什么才....
的头像 Linux爱好者 发表于 05-21 17:21 357次阅读
通过这10个基础命令开始掌握Linux命令行

FPGA中不可综合语句 相关知识

大家好,又到了每日学习的时间了,今天我们来聊一聊FPGA中不可综合语句 相关知识。 (1)所有综合工....
的头像 FPGA学习交流 发表于 05-21 14:56 428次阅读
FPGA中不可综合语句 相关知识

FPGA常见的警告以及处理方法

FPGA常见的警告以及处理方法 1.Found clock-sensitive change dur....
的头像 FPGA学习交流 发表于 05-21 14:53 540次阅读
FPGA常见的警告以及处理方法

关于嵌入式灯具的特殊要求规范书.pdf

关于嵌入式灯具的特殊要求规范书.pdf
发表于 05-21 11:39 22次阅读
关于嵌入式灯具的特殊要求规范书.pdf

TI芯片LM2742于FPGA 和 ASIC 的电源管理考虑

在当今竞争激烈的市场中,随着电子子系统的市场压力越来越大,FPGA和ASIC的重要性已经提高到了它们....
发表于 05-21 10:36 32次阅读
TI芯片LM2742于FPGA 和 ASIC 的电源管理考虑

MIPSfpga软核处理器IP设计方案

很多计算机专业的学生都只是在理论层次学习计算机体系结构方面的知识,比如数据路径、控制结构和存储系统等....
的头像 电子设计 发表于 05-21 10:17 700次阅读
MIPSfpga软核处理器IP设计方案

基于ARM9、Cortex-A系列高性能SoC无线核心板设计

基于AWorks平台的,集MCU、DDR2、NandFlash、硬件看门狗、无线芯片(Wi-Fi、N....
的头像 ZLG致远电子 发表于 05-21 09:39 995次阅读
基于ARM9、Cortex-A系列高性能SoC无线核心板设计

用30个实例探索top命令的细节

最全Linux TOP命令使用教程!
的头像 马哥Linux运维 发表于 05-20 10:20 364次阅读
用30个实例探索top命令的细节

技术帖:如何在 Linux 中使用 find

find 是日常工具箱中功能更强大、更灵活的命令行工具之一,因此值得花费更多的时间。
的头像 Linux爱好者 发表于 05-20 10:11 319次阅读
技术帖:如何在 Linux 中使用 find

88lifa利发国际娱乐

百度360搜索搜狗搜索