如何在arm与fpga通信内部集成arm核?

需要确认注册邮箱后才能开通博客,
&&&Altera新的SoC FPGA集成了ARM处理器和FPGA
6年会员勋章目前未领取。领取条件:?凡是注册时间六年以上的活跃用户即可领取该勋章。
congqiubo的博客——congqiubo's Blog
博主:????
EDN China资深编辑
文章(131)????
访问(478225)????
评论(64)????
投票(48)????
订阅本博??
博文列表查看方式:
需要确认注册邮箱后才能下载,
公司日前发布其ARM的系列产品,告诉本刊记者,在此款SoC FPGA单芯片中集成了28nm Cyclone V和Arria V FPGA架构、ARM Cortex -A9 MPCore处理器、纠错码(ECC)保护存储器控制器、外设和宽带互联等,在硬核处理器和FPGA之间采用了大于125 Gbps的宽带互联。
布署嵌入式计划
说,早在去年就开始布署嵌入式计划,在Altera嵌入式联盟中,英特尔已推出基于Altera的Atom E600C系列产品,今年5月和MIPS合作推出MIPS32架构嵌入式产品,等等。这次又推出基于双核ARM Cortex -A9 MPCore处理器的SoC FPGA系列产品。
Vince Hu认为,未来2~3年中,会有50%嵌入式系统里面会用上FPGA。基于28nm工艺技术的SoC FPGA在性能和功能方面代表了嵌入式系统新的发展方向。这些器件能够极大的帮助嵌入式系统设计人员缩短产品面市时间,降低成本,提高能效,同时还可以充分发挥ARM软件辅助系统的支持作用。
图一,Altera公司产品及企业市场副总裁Vince Hu。
SoC FPGA系列的亮点
一是,集成 双核ARM Cortex-A9 MPCore处理器,Altera的Cyclone V和Arria V SoC FPGA的处理器系统采用了双核800 MHz ARM Cortex-A9 MPCore处理器,同时具有NEON媒体处理引擎、单精度/双精度浮点单元、L1和L2高速缓存、ECC保护存储器控制器、ECC保护高速暂存存储器,以及多种常用外设。处理器系统的峰值性能达到4,000 DMIPS,而功耗不到1.8W。处理器系统和FPGA架构独立供电,能够以任意顺序配置和启动。工作起来后,可以根据需要关断FPGA部分,以降低系统功耗。
通过大吞吐量数据通路实现ARM Cortex-A9 MPCore处理器系统和FPGA的互联,峰值带宽超过125-Gbps,数据的连续性也很好。这种性能水平是两芯片解决方案无法实现的。集成单芯片SoC FPGA支持电路板设计人员在处理器和FPGA之间不采用外部IO通路,大幅度降低了系统功耗。
二是,采用先进的28 FPGA技术,Altera的SoC FPGA系列利用了其28nm系列产品,在多个方面进行创新,通过定制满足了用户的功耗、性能和成本要求,这些创新包括工艺技术、收发器技术、IO资源和硬核IP。Cyclone V和Arria V SoC FPGA的推出将这一系列产品进一步拓展至嵌入式处理市场。
Cyclone V和Arria V SoC FPGA基于低功耗28nm工艺(28LP)。这些系列具有分别工作在5Gbps和10Gbps的嵌入式收发器。FPGA架构包括精度可调DSP模块,以及三个ECC保护存储器控制器。Altera的Cyclone V SoC FPGA具有110K逻辑单元(LE),系统功耗和成本是业界最低的,器件性能水平非常适合大批量应用,包括下一代芯片工业驱动器、高级辅助驾驶以及视频监控等。对于中端应用,Arria V SoC FPGA在成本和性能上达到均衡,总功耗也是最低的。器件具有460K LE,适合满足对性能要求较高的应用,包括,远程射频前端、LTE基站和多功能打印机等。
图二,Altera基于ARM的SoC FPGA。
FPGA业界的第一款虚拟目标
Altera SoC FPGA虚拟目标是Altera SoC FPGA的。它建立了一个特殊的目标电路板模型。第一块目标电路板对ARM Cortex-A9处理器及其外设进行功能建模。SoC FPGA虚拟目标支持FPGA IP通过名为环路FPGA的附加开发套件连接硬核处理器系统。SoC FPGA虚拟目标支持软件应用工程师在获得实际硅片之前,支持立即开始器件专用软件开发,缩短了产品面市时间,使软件工程师能够更好的进行控制,增强了可视化功能。SoC FPGA虚拟目标提高了软件开发人员的效能,增强了软件总体质量。虚拟设计平台支持Linux和VxWorks,与ARM工具兼容,具有环路FPGA扩展选择。
图三,FPGA业界的第一款虚拟目标, 。
SoC FPGA的系统级优点
提高了系统性能,4,000 DMIPS时,功耗不到1.8W,高达1,600 GMACS、300 GFLOPS的DSP。&125 Gbps处理器至FPGA之间的宽带互联,具有高速缓存连续硬件加速器。
降低了功耗,相对于2芯片解决方案,功耗降低了30%。
减小了电路板面积,外形封装减小了55%,只有两种电源。
降低了系统成本,降低了元件成本、降低了PCB复杂度和成本和更少的布线,更少的板层。
据了解,基于ARM的SoC FPGA系列产品,预计2012年下半年工程样片面市
图四,优异的系统带宽和数据完整性。
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
??????有[ 1 ]名读者喜欢此文
阅读(2415)??
最近到访博主
评论是对思考最好的总结…
你还可以输入1000字
--- 现有 1 个主题,共 1 页 ---
转发到我的博客
评论??的“Altera新的SoC FPGA集成了ARM处理器和FPGA”
/*Generator:eWebEditor*/p.MsoNormal,li.MsoNormal,div.MsoNormal{margin:0margin-bottom:.0001text-align:text-justify:inter-font-s...
你还可以输入30000字
同时评论给?congqiubo
你还可以输入1000字
你还可以输入1000字
EDN China资深编辑
zcz2004??13:43 07-24
sstarslzm??15:13 11-20
oceancjc??18:21 04-01
oceancjc??17:59 04-01
oceancjc??17:59 04-01
暂未加入小组,你可以立即
-- Use of this website is subject to its terms of use.
京ICP备号-4 |
京公网安备37 |
新版社区已上线,旧版论坛、博客将停用
1、为防数据丢失,旧版论坛、博客不再接受发帖;
2、老用户只需重设密码,即可直接登录新平台;
3、新版博客将于8月底完美归来,敬请期待;
4、全新论坛、问答,体验升级、手机阅读更方便。拿掉FPGA中ARM内核,英特尔会这么做吗-控制器/处理器-与非网
日前在美国旧金山举办了&2016英特尔开发者论坛&(IDF2016),在此次会议的第三天,也就是8月18日,该公司举办了聚焦的非公开会议&2016英特尔SoC FPGA科技论坛&(Intel SoC FPGA Developer Forum,ISDF)。该公司CEO布莱恩&科再奇(Brian Krzanich)登台发表主题演讲,回答了原阿尔特拉公司(Altera)的FPGA用户的几个疑问。
就像科再奇半开玩笑地所说的那样,原阿尔特拉用户的最大的担忧恐怕就是FPGA混载的内核是否会继续存在(图1)。科再奇对此表示,&我们不会去掉ARM内核而植入IA(Intel Architecture)内核&。同时还说,&SoC FPGA(混载有CPU内核的FPGA)中默认的CPU内核是ARM&。
关于基于IA内核的英特尔处理器IC和FPGA,科再奇表示,英特尔将积极推进二者的整合。英特尔已经发布了将微架构为Broadwell、采用14nm FinFET工艺生产的&Xeon&,与采用台积电(TSMC)20nm Planer工艺生产的&Arria 10&整合在一个封装内的MCP(参阅本站报道)。科再奇此次展示的幻灯片资料显示,除了Xeon之外,英特尔还打算将Core、Atom、Quark等处理器IC与FPGA组合在一起(图2)。
图1:将保留阿尔特拉FPGA上的ARM内核。右边是布莱恩&科再奇。
图2:除了保留ARM内核之外,还将推进与IA处理器IC的整合。
虽然英特尔与ARM在处理器IC等领域是竞争对手,但两公司也根据需要进行了合作,比如英特尔的代工业务部门(Intel Custom Foundry,ICF)将与ARM在物理库和POP(Processor Optimization Package)领域展开合作。英特尔的IoT用低端MCU&Intel Quark D1000&的内部总线是ARM开发的AMBA AHB和AMBA APB(参阅本站报道2)。
承诺长期供应FPGA产品
图3:承诺长期供应FPGA。
除了ARM内核方面的方针之外,科再奇还针对FPGA的长期供应进行了说明(图3)。阿尔特拉和赛灵思(Xilinx)此前一直明确表示,只要有客户,就会继续供应已经上市的FPGA。由于FPGA没有承载应用程序,不容易受到潮流的影响,因此可轻松采取&不间断&战略。而英特尔此前一直秉承Tick-Tock战略,接连不断地投放新产品,主张进行芯片的更新。
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
(有奖互动)哪款千元机才是最酷的……
旗下网站:
与非门科技(北京)有限公司 All Rights Reserved.
京ICP证:070212号
北京市公安局备案编号: 京ICP备:号posts - 17,&
comments - 5,&
trackbacks - 0
摘要:本文实现了一种基于 ARM-Linux的 程序加载方法,详细讨论了加载过程中各个阶段程序对配置管脚的操作,给出了硬件实现,编写了运行于 的嵌入式 Linux上的驱动程序。
  FPGA在系统上电时,需要从外部载入所要运行的程序,此过程被称为程序加载。多数情况下,FPGA从外部专用的 EPROM读入程序。这种方式速度慢,而且只能加载固定的程序。显然,当系统需要容量大而且 FPGA要加载的程序可以根据需要有选择的加载时不能采用这种方法。本文实现了一种基于外部的加载方法,速度快,而且可以根据设置给FPGA加载相应的程序。
  对于 公司的 FPGA,有五种加载方式:模式,串行从模式,串行主模式,并行从模式和并行主模式。JTAG模式常用于调试时,将主机综合好的程序加载到FPGA,优先级高于其他几种模式。其他加载模式取决于 FPGA上加载模式管脚(M0,M1,M2)的设置。
  用外部处理器给 FPGA加载程序时,可以采用串行从模式、并行从模式,甚至于 JTAG模式。本文选择并行从模式,原因在于更高的配置速率。   2、 FPGA程序数据的产生
  FGPA的程序加载即是要把综合好的程序文件按一定的时序写入FPGA。而 Xilinx的开发环境可以根据用户的选择产生多种文件格式,以不同的后缀名区分。不同的文件格式包含了不同的信息,有不同的用途。
  本文选择了.bin格式的文件。此文件是只包含有程序数据的二进制文件。产生此文件,要在bitgen 参数里增加-g Binary:yes 选项。
  此外,需要说明的是,通常的 D0位是最低有效位,而 Xilinx的 FPGA在接收程序数据时,D0位是最高有效位。因此,在按字节读取.bin格式的文件之后,需要有一个转换的过程。如从文件读到一个字节,0x7D,即二进制的 0111 ,需转换为: 。
  加载过程开始时,就要从.bin文件中顺序按字节读出数据,然后在 CCLK的上升沿写入 FPGA。在.bin文件中的数据都被写入 FPGA后,CCLK需要多出四个时钟周期,以使得 FPGA完成启动过程。   3、硬件设计
  在FPGA上,与配置有关的管脚分为两类:专用管脚,包括PROG_B,HSWAP_EN,TDI, TMS,,TCK,TDO,CCLK,DONE,和M0-M2。还有一类是可复用管脚,这类管脚在配置阶段作为配置管脚,配置结束后可以配置为通用普通的IO管脚,也可以继续作为配置管脚。在并行从模式下,涉及到的配置管脚和功能如下:
  CS_B:片选信号,低有效; RDWR_B:写信号,低有效; BUSY:FPGA忙指示,高有效,一般只有在并行加载时钟速率大于50M时才有可能用到;D0-D7:; INIT_B:芯片被复位后,此管脚为输出信号,输出低电平指示FPGA正在自行复位内部
  寄存器。复位结束后,此管脚浮空,处于输入状态。因此需要上拉,指示复位结束。内部寄存器复位结束后,此管脚若被拉低,则会推迟FPGA的程序加载过程。在程序加载过程中,此管脚又变回输入状态,对外输出低电平指示加载的程序数据存在CRC校验错误。
  PROG_B:异步复位信号,下降沿有效,此信号为低电平时复位FPGA,复位后,FPGA芯片处于内部寄存器自行复位过程,INIT_B被FPGA芯片拉低,此过程结束后,FPGA不再驱动INIT_B管脚,INIT_B管脚处于浮空状态,此时,INIT_B有上拉电阻时,INIT_B呈现高电平,依次可以指示FPGA的内部寄存器自行复位结束。程序加载状态。
  DONE:加载成功指示。 CCLK:程序加载时,数据在此信号的上升沿被写入FPGA。在本设计中,ARM芯片采用的是 SUMSUN公司的,与 FPGA配置管脚相连的是此芯片的通用 IO管脚 D组。硬件连接如图[1]所示。在 ARM的程序中,ARM管脚在程序加载的各阶段的输入输出设置如下:首先,设置 GPD[10](与 FPGA的 INIT_B相连)、GPD[11](与 FPGA的 BUSY相连)为输入管脚,以监视 FPGA内部寄存器自行复位结束和忙闲状态。其次,设置GPD[12](与 FPGA的 PROG_B相连)为输出状态,并使其输出低脉冲,使 FPGA复位。然后依次设置 GPD[8](与 FPGA的 CS_B相连)、GPD[9](与 FPGA的 RDWR_B相连)、GPD[14] (与 FPGA的 CCLK相连)为输出管脚,并使其输出低电平,使 FPGA处于被选可接受数据状态;接着设置D[0..7]为输出状态。  至此,ARM中的程序开始轮询GPD[10]的状态,检测到此信号为高时,有两种选择,其一是因为需要而推迟 FPGA的程序加载,可以通过设置 GPD[10]为输出,并使其输出为低电平直至程序加载开始。其二是开始给 FPGA加载程序,FPGA在 CCLK的上升沿接收数据,在给 FPGA加载程序的过程中,程序需要监视GPD[10]管脚的状态,一旦为低,FPGA指示程序数据加载 CRC校验出错。此时需要复位FPGA,重新加载.
  采用的硬件连接如下图:
  4、嵌入式 Linux的驱动实现
  本文以模块形式实现了运行于S3C2410上的linux驱动程序,源文件如下(有关寄存器
  的设置参考S3C2410的数据手册,以下源代码未包含头文件):
  #define GPIO_va_base 0x0F6000000
  //基于S3C2410 上的Linux内核IO控制寄存器首地址映射后的虚拟地址
  #define ARM_GPDCON PIO_va_base+0x30);
  #define ARM_GPDUP PIO_va_base+0x38);
  #define ARM_port_wr(addr,) *(volatile unsigned int*)(addr)=value)
  //定义输出
  #define FPGA_CS 8
  #define FPGA_RW 9
  #define FPGA_PROG 12
  #define FPGA_CCLK 14
  //定义操作
  #define ARM_GPDDAT (*(volatile u32 *)(GPIO_va_base+0x34))
  #define set_register_bit(x) ARM_GPDDAT=(1&&x)|ARM_GPDDAT
  #define clear_register_bit(x) ARM_GPDDAT=(~(1&&x))&ARM_GPDDAT
  //定义输入
  #define FPGA_INIT ((ARM_GPDDAT&&10)&1)
  #define FPGA_BUSY ((ARM_GPDDAT&&11)&1)
  #define FPGA_DONE ((ARM_GPDDAT&&13)&1)
  #define FPGA 211
  //定义主设备号,和mknod /dev/fpga c 211 0匹配
  typedef
fpga_device_t;
  static fpga_device_t fpga_devices[257];
  char buf[1000000];
  int fpga_(struct inode *, struct file *);
  ssize_t fpga_write(struct file *,const char *,size_t ,loff_t *);
  int fpga_release(struct inode*, struct file *);
  //初始化ARM的D组通用IO管脚
  void init_fpga(void){
  ARM_port_wr(GPIO_va_base+0x30,0x);
  //FPGA_BUSY FPGA_DONE FPGA_INIT be set input
  ARM_port_wr(GPIO_va_base+0x34,0xFFFF);
  ARM_port_wr(GPIO_va_base+0x30,0x);
  ARM_port_wr(GPIO_va_base+0x38,0);// put up
  set_register_bit(FPGA_CCLK);//set GCLK
  static struct file_operations fpga_ctl_fops= {
  open: fpga_open,
  write: fpga_write,
  release: fpga_release,};
  int init_module(void) {
  printk("Hello,word,Now preparing FPGA......\n");
  printk("register FPGA......\n");
  register_chrdev(FPGA, "fpga", &fpga_ctl_fops);
  printk("Done!\n");
  printk("Hello,word,success!\n");
  return 0;
  int fpga_open(struct inode *inode, struct file *filp){
  minor = MINOR(inode-&i_rdev);
  init_fpga();
  fpga_devices[minor]++;
  printk("FPGA is ready.\n");
  return 0;
  ssize_t fpga_write(struct file *flip,const char *buffer,size_t count,loff_t
  *ppos){
  if(copy_from_user(buf,buffer,count)){
  printk("error \n");
  return -EFAULT;
  printk("%d numbers have been received!\n",count);
  printk("The number is:%d\n",count);
  for(i=0;i&i++){
  ARM_GPDDAT=(ARM_GPDDAT&0x3F00)|buf[i];
  set_register_bit(FPGA_CCLK);
  printk("data write finished\n");
  for(i=0;i&4;i++){
  set_register_bit(FPGA_CCLK);
  clear_register_bit(FPGA_CCLK);
  int fpga_release(struct inode *inode, struct file *filp){
  minor = MINOR(inode-&i_rdev);
  if (fpga_devices[minor])
  fpga_devices[minor]--;
  printk("Goodbye cruel world\n");
  return 0;
  void cleanup_module(void){
  printk("Goodbye cruel world\n");
  5、结束语
  本文的创新点:基于ARM-Linux平台,实现了一种FPGA的程序加载模式,加载速度快,灵活高效。
阅读(...) 评论()大家觉得从51到ARM难,还是到FPGA难呢?
刚看了个帖子:
需要声明的是我没学过ARM,感觉他们说学ARM入门挺难的,借这个机会我也来吐槽学FPGA
不怕大家笑话,我学FPGA零零散散也有一年多了,现在说入门都有心虚,
我觉的fpga挺难的,我是学通信的,用fpga就是数字信号处理,
就拿我用过的来说吧: 产生正余弦 不能用查表 还要用cordic 先要看算法 还要考虑流水结构 时序 位宽溢出 符号....
做个滤波器感觉用c语言挺简单的 阶数大了又不能用乘加了 还要DA分布式查表 表还不能太大 还要分割 之后还要考虑 时序 位宽 符号 小数位 神马的....
等模块们都搭完了 还要考虑时序约束 同步啊 这这那个的 这些还没学会
你说用FPGA累不累呢 跟ARM比 哪个更难呢?
高手们都是怎么炼成的呢 高手们能不能也给指点一下?
显然后者啊
lollipop 发表于
显然后者啊
我也是这么认为的 没敢大声说
当然FPGA门槛比较高。
LZ把FPGA的应用和你的算法实现放在一起看,感觉门槛自然高很多了。就掌握的语言来说,只是就用两种了,而且两种思维方式。
ARM入门还是很简单的,而FPGA相对来说要难一些 个人只做过一些ARM方面的感觉还比较好入门
主要问题在于这是两种不同的思路,ARM是串行的执行程序,FPGA是并行的设计电路
主要问题在于这是两种不同的思路,ARM是串行的执行程序,FPGA是并行的设计电路
都用过的人才有发言权吧
这两种都没完整的学过,入门都不算
不过应该FPGA更难
从学习的角度来说,从51到ARM是自然过渡,你所有单片机的知识积累都直接对理解有帮助的,只不过器件的功能更多,寄存器配置更麻烦等等。
而FPGA就是体系完全不同的东西,单片机的经验就不重要了,甚至有时还是思维干扰因素。就比如你学会自行车,骑三轮车就非常别扭的感觉似的。当然FPGA能加单片机IP核心,那时又是殊途同归了。
我正好觉得FPGA比较简单点,个人也是MCU专行过来的,后来就是因为ARM无法入门,学了FPGA
从FPGA转到51、ARM,刚开始感觉特别不适应串行的处理方式,而且感觉特别受限制,不够灵活,尤其是不能自己定义管脚。其实感觉真正难的是思维方式的转变。
FPGA没用过,目前都是用arm跑裸机
没用过arm,fpga也刚刚在学,不过总是自然的按照顺序执行程序,没少出错,慢慢来吧
langxing08 发表于
主要问题在于这是两种不同的思路,ARM是串行的执行程序,FPGA是并行的设计电路 ...
我觉得人的脑思考问题是串行的 比如 A*B+C*D 也是先算完A*B 再算 C*D 最后算加法
而fpga是并行的,所以思考起来就比较麻烦
zl_diy 发表于
从学习的角度来说,从51到ARM是自然过渡,你所有单片机的知识积累都直接对理解有帮助的,只不过器件的功能 ...
你的比喻很贴切,也就是说学51是给ARM打基础呢 所以ARM入门时间要包括学51的时间
而学fpga是从头学的 所以时间会比较长吧
cy123 发表于
我正好觉得FPGA比较简单点,个人也是MCU专行过来的,后来就是因为ARM无法入门,学了FPGA ...
好吧 你是第一个说学fpga比ARM好学的
到ARM难,我是先会FPGA才会ARM的,现在对FPGA的了解比ARM透彻
做精通了,都难.
用心去学了,还要怕难么?
贵在坚持,说实话,电子行业的入门真的很低。
FPGA要难一些
做精通了都很难
楼主主要是一开始就做得比较全,比较深,才有这种感觉
就好像学ARM一开始就要上Linux系统一样
ju748 发表于
用心去学了,还要怕难么?
贵在坚持,说实话,电子行业的入门真的很低。 ...
虽然嘴上喊难,但是一直在坚持,不会放弃的.....
Jigsaw 发表于
做精通了都很难
楼主主要是一开始就做得比较全,比较深,才有这种感觉
就好像学ARM一开始就要上Linux系统一 ...
同意,元老说的就是有道理 !
NJ8888 发表于
到ARM难,我是先会FPGA才会ARM的,现在对FPGA的了解比ARM透彻
fpga方面,您是偶像级人物
我的经历跟NJ8888一样,但是往深了做,显然FPGA难度更高。
我自学FPGA也快一年了,但是我觉得FPGA一点都不难,只要把时序看懂了,有时候来个灵感,长久未完成的功能一下子就出来了。个人感觉都不难。ARM主要是start.s编写比较难,这个文件写好之后就用C直接操作了,就会容易得多。第一次接触都会觉得难,我第一次接触CPLD时愣是把芯片放了两年,直到三季度前翻出来才有个灵感,就一下子明白了它的工作原理。还有FX2估计相当多的人都在用,我也是在学FPGA时开始接触,放了半年再摸它才一下子学会的。……就是这样吧,一是要靠兴趣,二是要靠灵感。灵感不来,就是学不会。好的老师一点立马明白,一般的老师嘴磨破层皮也解释不明白,所以说实话哪行都不容易。
用FPGA仿佛又回到艺术创作的方式。就像过去用汇编写代码的年代。
不同体系的东西,不好比较。一个是软件,一个是硬件。
wye11083 发表于
我自学FPGA也快一年了,但是我觉得FPGA一点都不难,只要把时序看懂了,有时候来个灵感,长久未完成的功能一 ...
像30楼说的那样,您是艺术派啊,靠的是灵感 ,或者说是融会贯通吧
两种东西思维方式都完全不一样,FPGA难点
关键是信心和乐趣,其实没有啥是难的,不浮躁,坚持下去,按照各自的思路去学习,就行了。两种编程语言是不同的,最好不要受对方的影响。
ju748 发表于
用心去学了,还要怕难么?
贵在坚持,说实话,电子行业的入门真的很低。 ...
认真学,找个项目做下,就会了,用多了就精通了
学以致用&&多动手
学过51,刚接触FPGA,还没接触过ARM。想问一下,该怎么学好FPGA?
dreamer@sun 发表于
学过51,刚接触FPGA,还没接触过ARM。想问一下,该怎么学好FPGA?
你问楼上那些大侠吧,都是高手,我自己的代码风格是跟黑金学的
正想学习FPGA呢,看大家说的还真不知道该怎么开始了
易入难精。。。
用NIOSII后感觉就差不多了。用VHDL差别挺大的,真不习惯。
从51到FPGA主要是编程思维的转变,我觉得51到ARM过度很自然啊
从技术产生的价值来说,哪个的产品卖价高,说明入门门槛高,否则人人都可以耍,很快就跌破了。
其实我也想学fpga。。不过 ,,,貌似不简单啊。。。
基础打好什么都不难
因人而异吧,就看自己想学的是什么
天下事有难易乎?学之,则难者亦易矣;不学,则易者亦难矣。
ShawnLinson 发表于
因人而异吧,就看自己想学的是什么
天下事有难易乎?学之,则难者亦易矣;不学,则易者亦难矣。 ...
老祖宗留下的东西就是精辟,学fpg依然适用啊
阿莫电子论坛, 原"中国电子开发网"具备ARM内核的处理器型FPGA打造新的嵌入式系统架构
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
——赛灵思FPGA将集成ARM内核笔者的第一反应是“这是时候了”,笔者的第二反应是,“我希望他们这样做是正确的”。解释一下,赛灵思,被许多人视为是FPGA市场的领导者,至少在笔者的眼睛里曾有其产品线的弱点。至少一两年来,笔者一直询问赛灵思的人们为什么没有真正考虑基于ARM内核的FPGA。笔者认识到这并不是简单的把该内核扔进其FPGA,实际上还需要克服许多设计问题来保证ARM内核发挥其最大的功效。去年秋季当赛灵思宣布与ARM进行合作时,这些改变被放到了台面上。基本上来说,围绕这些改变的技术协议是让AMBA总线保持可编程逻辑与处理器核心的紧密结合。赛灵思采纳了ARM物理层IP,而两家公司达成了一个技术协议,共同定义AMBA 4标准,该标准是基于ARM内核的SoC设计的片上通信的事实上的产业标准。该技术到位后,赛灵思的努力方向了就很明显了。然而,还有一些细节赛灵思依然没有公布。日前在硅谷的嵌入式会议上,沉默被打破,所有的问题都得到了回答。他们将其称作他们的可扩展处理平台,充分利用了ARM的双核Cortex-A9 MPCore处理器,每个内核最高运行频率都达到800MHz。通过这个平台,设计者可以将需要高速接入、实时输入、高性能处理和/或复杂的数字信号处理的应用程序的串行和并行处理结合到一起。处理器系统由于有了架构上的改变,对于这个以处理器为核心的处理系统可以实行一个以软件为中心的开发流程。包括cach、,和通用的互联和I/O外设。该器件由赛灵思的高性能、低功耗28nm技术打造。高带宽的AMBA-AXI互联使可编程逻辑与处理器内核紧密的联系在一起。该架构解决了这些并行和串行运算环境、存储器和I/O接口的通用性能瓶颈问题。它还提供了处理器对可编程逻辑的控制,包括动态重配置。该架构减轻了软件开发者的硬件负担,他们可以从软件库中使用大量现成的开源和商用代码。另一个重要特性是FPGA可以在reset的时候作为操作系统引导。2011年初该基于可扩展处理器的平台会公布价格和供货信息。《电子工程专辑》网站版权所有,谢绝转载
您的昵称:
美国的游客
(您将以游客身份发表,请 | )
ESC是什么?
ESC,ESC是什么? 通过电子工程专辑网站专业编辑提供ESC的最新相关信息,掌握最新的ESC的最新行业动态资讯、技术文萃、电子资料,帮助电子工程师自我提升的电子技术平台.
嵌入式大会是什么?
嵌入式大会,嵌入式大会是什么? 通过电子工程专辑网站专业编辑提供嵌入式大会的最新相关信息,掌握最新的嵌入式大会的最新行业动态资讯、技术文萃、电子资料,帮助电子工程师自我提升的电子技术平台.
物理层IP是什么?
物理层IP,物理层IP是什么? 通过电子工程专辑网站专业编辑提供物理层IP的最新相关信息,掌握最新的物理层IP的最新行业动态资讯、技术文萃、电子资料,帮助电子工程师自我提升的电子技术平台.
新添订阅功能,提供全面快捷的资讯服务!
关注电子工程专辑微信
扫描以下二维码或添加微信号“eet-china”
访问电子工程专辑手机网站
随时把握电子产业动态,请扫描以下二维码
5G网络在提供1Gbps至10Gbps吞吐量方面具有很好的前途, 并且功耗要求比今天的网络和手机都要低,同时还能为关键应用提供严格的延时性能。本期封面故事将会与您分享5G的关键技术发展,以及在4G网络上有怎样的进步。
新版社区已上线,旧版论坛、博客将停用
1、为防数据丢失,旧版论坛、博客不再接受发帖;
2、老用户只需重设密码,即可直接登录新平台;
3、新版博客将于8月底完美归来,敬请期待;
4、全新论坛、问答,体验升级、手机阅读更方便。
推荐到论坛,赢取4积分

我要回帖

更多关于 arm与fpga通信 的文章

 

随机推荐