通用处理器体系架构简介

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

1. 通用处理器体系架构组成

    通用处理器都是基于指令的数据操作,那么问题来了:指令、操作数放那,指令、操作数怎么来回搬运,有了指令、操作数怎么干事。因此处理器体系架构由以下几个大部分组成:

    1) 存放指令、操作数  ——> 存储器;

    2) 来回搬运指令、操作数  ——> 总线;

    3) 有了指令、操作数干些啥  ——> CPU运算单元。

    简单的说就是:通过CPU运算单元去来回折腾存储器里面的指令、操作数。在这里,指令就是我们通常说的程序,对应程序存储器;操作数就是我们通常说的数据,对应数据存储器。

 

2. 通用处理器体系架构分类

    指令和操作数怎么存储和搬运造就了不同的通用处理器体系架构。

    1) 一类是指令、操作数一起存储和搬运,不分开,这是冯诺伊曼结构;

 

   2) 一类是指令、操作数分开存储和搬运,都分开,这是哈佛结构。

 

   3) 有了这些还不够,搬运东西我们知道,你要知道把什么东西搬到什么地方,这就是所谓的总线数据(东西)和总线地址(地址),因此我们也可以把它们给分开,这就是改进版的哈佛结构,DSP一般用这种结构。

 

  这三种体系架构的区别如下:

 

 当然,如果按照指令集来分类,分二类:

    1) RSIC:以ARM为代表,它是化繁为间、简单美思想的体现,已经深深改变了计算机的世界。生活中的嵌入式基本都是RSIC指令集;

    2) CSIC:以intel通用计算机为代表,在PC机上用的都是次,目前,听说也在吸收RSIC指令集的一些优势。

 

3. 如何理解SOC总线

    何为SOC总线,简单的说,就是按照约定的时序要求将一个东西搬到另一个地方,也就是将数据由一个地址搬运到另一个地址。你可以理解为不同的快递公司,顺丰、邮政、申通等。

    1) 寄送快递时,需要将快递的东西打包,这就是总线数据;

    2) 填上地址,这就是总线地址;

    3) 有时,快递公司为了提高快递效率,需要收集很多快递后一次发出,这就是总线的突发;

    4) 不同的快递可能走不同的道,有水路,有空路,这就是总线按速度分类传输,如AXI-Lite、AXI-Stream;

    5) 快递送达目的地需要签字确认才算一单完成,这就是总线之间的握手;

    6) 快递太多,为了运输方便,会在快递上用记号笔标记大致区域地址,这就是总线传输时,嵌入式物理网智能硬件等系统学习企鹅意义气呜呜吧久零就易,为了区分多主多从而设定的ID号。

    总之,SOC总线通过地址区分,彼此握手,数据传输,来达到系统间灵活级联的目的,提高硬件架构的开发和扩展。

 

4. 储存器简介

    计算机离不开存储器,因为它要找个地放东西,就像你不管到那工作,你都要找个地方住,当然存储器也有分类:

    1) NVM(非易失性存储器)

        a) ROM类:ROM、PROM、EPROM、E2PROM;

        b) Flash类:NOR Flash、NAND Flash;

        c) 光、磁介质存储器

    2) RAM(掉电丢失)

        a) SRAM;

        b) DRAM(SDRAM、DDR);

        c) 特定应用RAM:NVRAM、DPRAM、CAM、FIFO。

 

5. FPGA又是什么鬼

    FPGA说白了,就是一些逻辑控制门,加上一些特定的模块(FIFO、BRAM、PLL)。在这个科技发展比口袋里钱还花的快的时代,我们就应该转变思维:当FPGA做接口逻辑时,我们就应该以逻辑和时序的思维思考;当FPGA做CPU功能时,我们就应该从高级语言和数据结构的思维思考;更重要的一点是CPU与逻辑之间的接口目前的趋势是总线(Xlinix 是AXI4),要有这种意识,打通自己在这2种思维之间的脱节。

转载于:https://my.oschina.net/u/3629177/blog/1579247

你可能感兴趣的:(嵌入式,硬件架构,python)