基于SOC fpga的开发教程
SoC 芯片, 相较于传统的单一 ARM 处理器或 FPGA 芯片, Intel Cyclone V SoCFPGA 既拥有了 ARM 处理器灵活高效的数据运算和事务处理能力, 同时又集成了 FPGA 的高速并行处理优势, 同时, 基于两者独特的片上互联结构, 使用时可以将 FPGA 上的通用逻辑资源经过配置,映射为 ARM 处理器的一个或多个具有特定功能的外设。目录目录基于 Cyclone V SoC FPGA的嵌入式系统设计教程.1ntel Cyclone SoC FPGA介绍SOC FPGA的基木概念soPC的基本概念SoPC与 SOC FPgA之间的差异SOC FPGA架构的优势基于 Cyclone V SoC FPGA器件的重要电路设计FPGA IO和时钟SOC FPGA JTAG电路设计569AC501SoC开发板介绍11布局及组件11轻触按键用户LED……14时钟输入....::.::::::.:::∴15GP|O接∏15DDR3 SDRAM重着::::::....:::...通用显示扩展接口USB to uart∴………以太网收发器,21SOC EPGA开发板的FPGA配置数据下载和固化…….…SOC FPGA启动配置方式介绍∴23sof文件烧写方式.24JC文件生成和烧写26SOC FPGA开发流程简介31SOCEPGA开发流程使件开发.31软什开发AC501 SOC FPGA开发板黄金参考设计说明34什么是GHRD…34GHRD FOR AC501-SoC34打开和查看GHRD.…34clk o38sysid qsys39led_pio...,.,…,…………39button pIospIi2c 042alt vip vfr tft0.......……………42alt vip itc_ 044总结Step by step为HPS添加UART外设,45目录修改GHRD工程打开GHRD工程45添加 UART IP.246关于HPS与FPGA数据交互连接UART|P信号端口分配组件基地址…49生成Qsys系统的HDL文件50添加uat_1的端口到 Quartus工程中51分配FPGA管脚生成配置数据二进制文件54制作 Preloader Image打开 SOCEDS工具生成bsp文件56编译 preloader和 uboot60更新 preloader和 uboot62使用新的 Uboot启动SoC.:::::::::::·::·制作设备树设备树制作流程...64准备所需文件65生成dts文件…生成dtb文件.…67运行修改后的工程.68使用Ds-5编写和调试SoC的 Linux应用程序,,,…70启动DS-5创建C工程…72编详工程.176建立SSH远程连接77创建远程连接复制文件到目标板3运行应用程序85远程调试…GDB设置GDB连接和调试287总结使用 Win sCp在 Windows和 Linux系统之间传输文件……91为什么要使用 Winscp.安装 Win SCP.…91建立远程主机连接91新建远程连接.94调用 putty终端基丁虚拟地址映射的 Linux硬件编程....….….97什么是虚拟地址映射97虚拟地址映射的实现:::::::::.:a·基于虚拟地址映射的PIO编程应用目录P|O外设的虚拟地址映射…在DS-5中建立PO应用工程.102添加和包含HPS库文件.103添加FPGA侧外设硬件信息P|O|P核介绍108Po核寄存器映射110P|O|P核应用实例..112合理的程序退出机制.…116关于按键消抖.基于虚拟地址映射的UART编程应用…..119UART(RS232 Serial port)核介绍UART(RS-232 Serial port)寄存器映射UART|P核应用实例……122在DS-5中建立UART应用工程…虚拟地址射122设置波特率.:::::::·:.::.·:.124字符发送124字符串发送…125字符接收125宇符串接收UART|P核板级调试131总结基于虚拟地址映射的12C编程应用……133Open Cores2CP简介133Open Cores2C|P奇存器哄射.134PRER:时钟频率预分频寄存尜134CTRL:控制寄存器.134TXR:发送数据寄存器CR:命令寄存器135SR:状态寄存器136l2CP核应用实例.….135在DS-5中建立12C应用工程136虚拟地址映射1362C|P核基本寄存器配冒,140使用12C|读写图像传感器寄存器1412C护P读写oV5640摄像头板级调试.146总结.152本章小节152基于 Linux应用程序的HPS配置FPGA……………………53制作 Quartus工程.153生成rbf格式配置数据……154编译 Linux配置FPGA应用稈序156在系统重配置FPGA实验…157本章小结159目录编译嵌入式LiuX系统内核160安装 VMware161安装 Ubuntu系统灬162下载 Linux系统源码172设置交叉编译环境…配置和编译内核∴……180快速配置内核180使能 Altera UART驱动182使能 Altera sp驱动使能OC12C控制器驱动.…184使能 Framereader驱动保存内核配置文件.187编详内核使用内核启动开发板本章小节192Linux设备树的原理与应用实例.:::::::::::..........:::..:193什么是设各树193设备树基木格式194设各树加载设备驱动原理编写12C控制器设备节点202加载OC12C驱动206使用RTC206使用 EEPROM∴211编写5P控制器设备节点211本章小节214基于 Linux标准文件/o的设备读写…………………………215什么是文件/O215基于文件|O操作的一般方法215文件描述符215打开设备(open)21向设各写入数据( write):::.::aa..216读取设备数据(read).216杂项操作( ioctl)…………217关闭设备(cose)……218其他操作218使用文件1O实现12C编程218本章小节.…221FPGA与HPS扃速数据交互应用222FPGA与HPS通信介绍.……………………………………22H2 LW AXI Master桥H2FAX| Master桥224F2 H AXI Slave桥225AX与 Avalon-MM总线的互联……225Ayalon-MM总线225目录Avalon-MM Slave接口227基本Aa|on- MM Slave iP设计框架29PWM控制器设计…1233Avalon-MM Master接口.253常见的通用 Avalon mm master主札………….…253高速数据采集系统……261Linux驱动编写与编译..273基本字符型设备驱动274字符型设备驱动框架275头文件包含276变量和宏定义.………277en方法278e方法278read方法.278write方法279ioct|方法:::::.::::::::::..a:::a.:....:280fops定义..281模块初始化代码282模块退出代码…284模块声明…284PWM控制器驱动完整源码.….284驱动编译 Makefile289Ubuntu卜编译设备驱动291字符型设备驱动验证292安装驱动文件292设计测试程序…::::::::::.:.:.·:...:::·293基于DMA的字符型设备驱动Avalon -MM Master Write驱动…297Avalon-MM Master Write测试303安装驱动文件303设计测试程序.::::·303本章小节310介绍介绍的基本概念(原于年发布的一款在单一芯片上集成了双核的处理器和逻辑瓷源的新型芯片,相较于传统的单处理器或片既拥有了处理器灵活高效的数据运算和事务处理能力,同时又集成的高速并行处理优势,同时,基于两者独特的片上互联结构,使用时可以将上的通用逻辑资源经过配置,映射为处理器的一个或多个具有特定功能的外设,通过高达位宽的高速总线进行通信,完成数据和控制命令的交互。出于片上的处理器是经过布局布线的硬线逻辑,因此其能工作的时钟主频较高,因此单位时间内能够执行的指令也更多。的基本概念在技术推出之前,各大厂家已经推广了有多年的技术。和不相同的是,是在单纯的心片上使用的逻辑和存储器资源搭建一个软核系统,由该软核实现所需处理器的完整功能。由于是使用的通用逻辑搭建的,因此具有一定的灵活性,用户可以根据自己的需求对进行定制裁剪,增加一些专用功能,例如除法或浮点运算单元,用于提升在某些专用运算方面的性能,或者删除些在系统里面使用不到的功能,以节约逻辑资源。另外也可以根据用户的实际需求,为添加各种标准或定制的外设,例如等标准接口外设,同时,用户也可以自己使用的逻辑资源,编写各种专用的外设,然后连接到总线上,由进行控制,以实现软硬件的协同工作,在保证系统性能的同时,増加了系统的灵活性。而且,如果单个的软核无法满足用户需求,可以添加多个软核,搭建多核系统,通过多核协同工作,让系统拥有更加灵活便捷的控制能力但是,由于是使用的通用逻辑资源搭建的,相较使用经过布局布线优化的硬核处理器来说,软核处理器够运行的最高实时钟主频要低一些,而且也会相应的消耗较多的逻辑资源以及片上存储器资源,因此方案仅适用于对于数处理器整体性能要求不高的应用,例如整个系统的初始化配置,人机交互,多个功能模块问的协调控制等功能介绍与之间的差异从架构的角度来说,和是统一的,都是由部分和处理器部分组成。在中,嵌入的是公司的硬核处理器,简称技术中,嵌入的是软核处理器,两者指令集不一样,处理器性能也不一样核处理器性能远远高于软核处理器。片上的部分,不仅集成了有双核的硬核处理器,还集成了各种高性能外设,如控制器控制器等,有这些外设,部分就可以运行成熟的操作系统,提供统一的系统,降低开发者的软件开发难度。而软核虽然可以通过配置,用逻辑资源来搭建相应的控制器以支持相应功能,但是从性能和开发难度上来说,基于架构进行设计开发是比较好的选择。另外,虽然片上既包含了有又包含了有,但是两者一定程度上是相互独立的,芯片上的处理器核并非是包含于逻辑单元内部的,和()处理器只是封装到同一个芯片接冂、电源引脚和外设的接口引脚都是独立的,因此,如果使用芯片进行设计,即使不使用到片上的处理器,处理器部分占用的芯片资源也无法释放岀来,不能用作通用的资源。而」是使用通用逻辑和存储器资源搭建的,当不使用时部分占用的资源可以被释放,重新用作通用资源。架构的优势嵌入式处理器开发人员面对的一个最大挑战就是如何选择一个满足其应用要求的处理器。现在口有数百种嵌入式处理器,每种处理器都具备一组不同的外设、存储器、接口和性能特性,用户很难做出一个合理的选择:要么为∫匹配实际应川所需的外设和接口要求而不得不选择在某些性能上多余的处理器要么为」保持成本的需求而达不到原先预计的理想方案。采用集成架构的芯片,用户将不会局限于预先制造的处理器技杺,而是根捃自己的要求定制处理器,按照需要选择合适的外设、存储器和接口。此外,用户还可以轻松集成自己专有的功能(如,用户逻辑),创建一款“完美”的处理器,如图所示,使用户的设计具有独特的竞争优势。介绍vOFLASHlo LIcCPUFLASH1/OSDRAMFPGADSPFPGACPU CPU DSPSDRAM用户所需要的嵌入式设备主控制器,应该能够满足当前和今后的设计功能及性能需求。由于今后发展具有不确定性,因此,设计人员必须能够更改其设计,例如为处理器加入新的功能电路,定制硬件加速器,或者加入协处理器,以达刭新的性能日标,而基于的系统能够满足以上要求。采川芯片,用户不仅可以使川处理器的高性能运算和事务处理能力,还可以根据需要定制功能。在单个中实现高性能处理器、外设、存储器和接口功能,可以降低用户的系统总体成本。开发人员希望快速将产品推向市场并保持一个较长的产品生命周期,避免更新换代。基于的系统在以下几个方面可以帮助用户实现此目标≯缩短产品的上市时间—可编程的特性使其具有最快的产品上市速度。许多的设计通过简单的修改都可以被快速地实现到设计处理器能够运行成熟的操作系统,基于操作系统,用户能够非常简单高效的编写应用程序,加快软件开发周期。而系统的灵活性和快速上市的特性源于提供完整的开发套件、众多的参考设计、强大的硬件开发工具(和软件开发工具(套件。用户可以借助厂商提供的参考设计和易用的开发工具。在几个小吋内就完成自己的设计原型。建立有竞争性的优势一维持一个基于通用硬件平台的产品的竞争优势是非常困难的。而器件,能够充分发挥的可编程特性,设讣独有的硬件加速和协处理逻辑,配合处理器协同工作,具备硬件加速、定制的可裁剪的外设等的系统,具备了竞争的优势>延长了产品的生存时间一使川器件的产品带来的一个独特优势就是能够对硬件进行升级。即使产品口绎交付给客户,仍可以定期升级。这些特性可以解决很多问题:
- 2020-12-06下载
- 积分:1
Axure RP 8入门手册
xure RP 8入门手册 完整版,小楼著,全的序这本书是我自己最期待的一本书。这并不是说我的另外一本书《 Axure rP8实战手册》写得不好,而是从这本书的构思及面向的读者来讲,这本书会让我更有成就感。《 Axure rP8实战手册》是以案例为主导的一本书,全书囊括了Web与App原型设计的110个案例,并且按照由浅至深的规则结合清晰的知识结构进行案例的排布。同时,考虑到初学者的上手难度,在书的第一部分安排了56项基础操作内容。可以说,《 Axure RP8实战手册》是目前的 Axure书籍中,案例较多、实际应用参考性较强的一本书。但是,以案例为主导的书不能适合所有读者,对于初学者来说课堂比图书馆更适合学习。那么,本书就可以用课堂来形容。从我的《 Axure RP7.0从入门到精通》一书出版上市之后,我更清楚地看到了读者的需求。我把这些需求及教学中总结出的一些新的思路,再加上一些写作方法上的创新,全部融合到这本书当中。总的来说,这本书有以下特点与优势。1.主线清晰。和一般的工具书不同,本书并不是枯燥地罗列知识点,对各种功能进行文字解释,而是以一条由浅至深的路线,循序渐进地展开讲述。读老在学习过程中,只需按照由前至后的顺序阅读并配合练习,即可轻松学握各类知识要点,实现学习目标。2.层次清晰。学以致用是本书的原则。作者考虑读者的需求,将书中内容与工作需求紧密结合内容上分为基础与进阶两部分。读者在工作中如果只是需要做静态线框图(低保真原型),在学习完基础部分之后,即可满足工作需求。如果需要为原型添加丰富的交互(高保真原型),则可以通过继续学习进阶部分,来加强原型交互实现的能力。3.结构清晰。结合读者的反馈,本书的知识结构分布上做了吏清晰的划分,特别是在目录结构上,除了章节目录还单独增加了案例目录,能够让读者更加方便查阅到需要参考的内容。4.情景真实。这是保留了《 Axure RP7.0从入门到精通》一书的优点,通过虚拟人物让滨者更加感同身受,口语化的知识问答,更适合读者理解知识内容。本书特别征集了多位真实人物的头像,让读者在阅读过程中体验更加真实,更有亲切感。5.案例丰富。作者结合知识内容,融入了大量的实战案例,共计70个,虽然没有标明具体出处,但是读者能够从各个知名网站或者Ap中发现与这些案例相似的交互效果。这些案例都紧紧结合知识点的分布,所有案例出现时,都基于当前所讲述的知识点和读者已经学过的知识点,不会有陌生内容的存在,让读者能够轻松完成案例的练习。6.资源丰富。本书所有的案例源文件、素材、元件库、汉化包等资料,全部奉献给每一位读者。考虑到带有光驱的计算机越来越少,这些资料将通过网络进行传递,读者可以根据书中的提示进行相关资源的下载。综上所述,每一个特点与优势,都是我期待这本书上市的理由。我希望看到每一位读者轻松学习的喜悦,而不是难于上手和理解的苦恼。我想,能够心系读者,从真正有益于读者的角度去撰写一本书,是作为作者的责任与骄傲。内容导读本书共分为2篇。第1篇:基础部分。包含了1~9章的内容,共计17个案例。读老通过对这一部分内容的学习,就能够掌握软件的使用方法,熟悉原型项目的构建,以及带有简单交互的低保真原型的制作。第1章:讲述软件的安装与汉化,以及一些重要的注意事项。第2章:讲述如何结合思维导图软件创建项目结构。第3章:讲述元件与元件库的基本操作与用途。第4章:讲述原型的查看与各种发布共享方法。第5章:讲述原型尺寸的设定以及对多种设备的适配。第6章:讲述通过概要功能进行页面与元件的管理,以及使用检视功能,对页面与元件进行属性、样式以及说明的设置。第7章:讲述母版功能的使用,通过母版进行原型内容的重用,提高原型制作效率。第8章:讲述标记元件的使用,以及业务流程图的绘制方法。第9章:讲述一些其它软件功能的使用方法。第2篇:进阶部分。包含10~15章的内容,共计53个案例。读者可以在这一部分学习更加深入的内容,包括复杂的元件、变量以及函数等内容。通过学习这些内容掌握更多的原型制作技巧,不但能够学习高保真原型的制作,乜能从中获得各种实战应用的参考。第10章:讲述动态面板的原理与各种特性。第11章:讲述公式的格式与自定义变量的使用。第12章:讲述条件的编辑,运算符的作用,以及条件表达式的书写。第13章:讲述系统变量与函数的使用方法,通过结合系统变量、函数实现各种交互效果的案例,体现函数在提升原型的制作效率、保真度、扩展性方面的优势与特点。第14章:讲述中继器的原理,以及与中继器有关的交互。第15章:讲述中继器相关的系统变量,并结合这些系统变量实现更多的中继器交互效果。最后提醒读者,如果是初学者,务必按前后顺序学习本书的内容,切勿跳跃学习,以免产生学习障碍。编辑的话感谢小楼老师的信任和邀请,让我从编辑的角度谈一谈这本书与小楼老师认识并合作,是一种缘分。其实我们刚开始合作时并不顺利,原因是小楼老师实在太“固执”了。从书稿内容到随书配套资源,再到排版、封面设计的讨论,凡是小楼老师认为需要坚持的东西,他都不会做任何让步。我们曾针对案例演示图片应该用何种线条来标注更适合读者理解、演示步骤时用箭头引导还是数字符号标注表达更清楚等问题,连续在线讨论了两天,确切地说,是争论。如果我们当时是面对面讨论的话,可能争论到最后双方都是面红耳赤,要拍案而起了。更不论《 Axure RP8实战手册》这本书的写作原稿近800页,排版时我们因为版式设计的问题,一遍又一遍推倒方案重来。一方面我需要考虑控制图书页数,保证图书成本、定价不能过高,另一方面小楼老师又要坚持保障读者阅读和学习的质量不被影响,拒绝采用双栏排版的方式。以致我们争论到最后,一度接近终止合作的边缘可又是这种“固执”,让我看到一位作者对图书内容的坚持、对产品品质的追求和对读者的负责。也是这种“固执”,让我每次出版小楼老师的书后都仿佛被“剥掉一层皮”,却对这样的作者更加钦佩和珍惜。小楼老师在每一本书里,都倾注了太多的时间和心血,这一本更不必说。因为看到太多写作背后的故事,所以,每一次书稿拿在我手里,都并不轻松。这本书在写作时,恰逢 Axure软件新版本测试阶段,正式版发布后,软件界面样式进行了一些细微调整。但为了严格保证书内的操作截图与软件界面完全一致,使读者在学习过程中不会因此产生任何疑惑或遇到任何困难,小楼老师将书内90%的图(与正式版界面有细微差别)换了一遍。他告诉我这个消息时是当天下午5点多,已经改了近20小时,只改了全书四分之一。之后很快提交了全部的更新版图片。类似这样的事,在小楼老师的写作过程中很常见,单是这本书内由于官方史新版本导致界面细节有调整而全书吏换图片的经历就有过3次。而在案例的选取、教学设计、源文件制作、图片标注、步骤讲解过程中,更能感受到作为一名作者的“死磕”和用心。在《 Axure RP7.0从入门到精通》和《 Axure RP8实战手册》相继取得成功,一跃成为 Axure软件教程类书籍中被业内首推和高度受读者认可的学习资料后,小楼老师本可以直接在现有教程的内容结构和教学方式设计的基础上,通过直接添加新版本的内容、更新界面图片,快速地完成《 Axure rP80从入门到精通》的写作。不过,这显然不能达到小楼老师对自己苛刻的要求。事实上,每一部作品都是他对自己的颠覆。前两本书出版后,我们建立了相应的读者QQ群,另外,还有小楼老师的网站Axure原创教程网)等,从这些渠道,小楼老师搜集到读者对前两本书的学习反馈和建议,然后根据这些反馈,将自己的教学方式、知识结构、案例内容等全部重构一遍。这本书对于小楼老师来说,不仅只是将操作过程和技巧讲述一遍,他更希望通过这本书,让读者达到在课堂上的学习效果,仿佛老师就在身边—对—地耐心讲解,在讲授技巧的同时,更注意因材施教,分别对不同学习阶段、不同基础的读者人群讲解基础操作、高阶技巧,以及如何将书本里的知识与实际工作直接结合。所以,这本书,不仅对于读者来说是一部不可错过的 Axure re8.0教程,对于小楼老师来说,更是倾尽自己所有的心思、时间和精力,细细打磨出的一个产品。小楼老师说,这本书是他最为期待的本教程。对于我,又何尝不是呢?与小楼老师的合作,是一段弥足珍贵的经历,其中点点滴滴透露的,不仅是稿件上的精致图文内容,更多是做产品的态度。本书的读者,多少都是与产品相关的,相信你读完这本书后,收获的远不止于对 Axure这款软件的精通使用。目录第1篇基础第1章准备工作与注意事项161.1下载安装 Axure rp8:0………………1.1.1W/ indows系统的安装与汉化………1.1.2Mac系统的安装与汉化1.2原型相关的文件类型…191.3文件自动备份与找回1914功能区域的视图设置20第2章创建项目结构…………………………212.1使用 Xmind进行项目结构梳理2.2根据思维导图搭建原型页面结构…···.·,垂,,,非,垂26》第3章元件功能概述273.1鼠标的操作…283.2元件的使用293.2.1使用软件自带元件库3.2.2使用自定义元件库第4章查看原型…354.1机预览…364.2共享发布4.3在线反馈404.4 Axure Share App…414.5生成文件4446浏览器插件4.7工具栏介绍…49第5章创建自适应视图…………515.1不同设备的原型尺寸5创建不同设备的视图··53移动设备的浏览设置》第6章概要与检视功能596.1概要功能62检视功能一一页面样式626.3检视功能一一页面说明…6564检视功能——页面属性1垂·······,·垂656.5检视功能一一元件命名666.6检视功能—一元件样式6767检视功能—一元件说明·,中·垂··6.7.1添加元件说明6.7.2自定义说明字段746.8检视功能——元件属性7469检视功能—一元件交互……876.10检视功能——组合属性》第7章母版管理957.1母版简介………………………………………………………967.2添加/编辑/删除967.3添加母版到页面中9774从贞面中移除母版·977.5拖放行为单··,··987.6自定义触发事件第8章标注与流程……………………1038.1页面快照8.2便签与标记1058.3连线与箭头108≯第9章其他1139.1自定义元件库…1149.1.1创建元件库………………114912制作自定义元件1159.1.3使用元件库11692白定义形状………………………………1179.3钢笔工具………………12094裁剪与切割图片…12095网格与辅助线…1229.6团队项目……………1249.7图标字体1309.8Web字体…1319.8.1@ font faco代码13198.2链接到“CSS”文件134第2篇进阶第10章动态面板13810.1动态面板简介…13910.2动态面板特性——容器14110.3动态面板特性—多状态15010.4动态面板特性——循环·...··,··中·····,·,···………………15410.5动态面板特性——拖动……15810.6动态面板特性——适应宽度……16010.7动态面板特性相对固定161≯第11章公式与自定义变量16411.1公式的格式………16511.2自定义变量——局部变量…………16611.3自定义变量——全局变量174第12章条件与表达式……18412.1条件的编辑185122条件的类型19412.3运算符与表达式20912.3.1算术运算符……………123.2关系运算符4·B············20912.3.3逻辑运算符第13章系统变量与函数…21613.1概念简介21713.2元件布垂垂垂垂.·垂,中,·章章·,垂垂………21913.3鼠标指针…24813.4窗冂页面……25313.5数字…25913.6数学26313.7口期………27013.8字符串277》第14章中继器…··甲28714.1中继器的组成…∴…28814.2数据集——添加行30314.3数据集一一更新行…………………………………………………31314.4数据集一一删除行31614.5数据集——标记行与取消标记行32314.6项目列表——排序……34014.7项目列表——筛选,··.···垂垂和中·,非·非中垂垂··p,···非··347148中继器的属性…358》第15章中继器的系统变量36715.1系统变量——中继器…36815.2系统变量——数据集………………………………………383写在最后39210
- 2020-12-08下载
- 积分:1