cpci总线背板是啥,powerPC系列CPU都有哪些

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cpci总线背板是啥,powerPC系列CPU都有哪些相关的知识,希望对你有一定的参考价值。

采用cpci总线背板,cpci背板指的是什么,powerPC是芯片还是架构,飞思卡尔也能能生产powerPC吗?powerPC系列CPU有哪些,是不是很多公司都可以生产,比如飞思卡尔。。?
尺寸为3u,CPU为powerPC系列,背板总线为CPCI的国产板卡有哪些,谢谢谢

参考技术A 飞思卡尔当然生产powerpc系列,主要是针对应用的,比如路由器芯片。其他还有amcc的兼容通信处理器,ibm的cell处理器还有一些xilinx的嵌入式内核。
cpci可以看做微型的PCI总线,主要用于工业控制及服务器。
常见的powerpc有飞思卡尔的MPC系列,860,82xx和高端的83xx和86xx,主要用于通信,7xxx用于通用计算,5xx和5xxx用于汽车和工业控制现场
参考技术B CPCI总线(CompactPCI,紧凑型PCI),是PICMG(PCIIndustrial Computer Manufacturer's Group,国际工业计算机制造者联合会)组织于1994年提出的高性能工业计算机总线标准。
在电气特性上,CPCI总线以PCI电气规范为基础,解决了VME等总线技术与PCI总线不兼容的问题,使得基于PC的x86架构、硬盘存储等技术能在工业领域使用。同时由于在接口等地方做了重大改进,使得采用CPCI技术的服务器、工控电脑等拥有了高可靠性、高密度的优点。
在机械结构上,CPCI总线结构使用了欧卡连接器和标准3U、6U板卡尺寸。此外,CPCI总线具有很好的抗震性和通风性,而且还可以从前面板拔插板卡,使更换和维修板卡极为方便。
没记错的话,现在只有IBM在生产POWER PC ,

Big Endian  和 Little Endian 模式的区别

谈到字节序的问题,必然牵涉到两大CPU派系。那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU。PowerPC系列采用big endian方式存储数据,而x86系列则采用little endian方式存储数据。那么究竟什么是big endian,什么又是little endian呢?

其实big endian是指低地址存放最高有效字节(MSB),而little endian则是低地址存放最低有效字节(LSB)。

    用文字说明可能比较抽象,下面用图像加以说明。比如数字0x12345678在两种不同字节序CPU中的存储顺序如下所示:

Big Endian

   低地址                                            高地址

 ----------------------------------------------------------------------------->

   |     12     |      34    |     56      |     78    |

Little Endian 

   低地址                                            高地址

   ----------------------------------------------------------------------------->

   |     78     |      56    |     34      |     12    |

     从上面两图可以看出,采用big endian方式存储数据是符合我们人类的思维习惯的。

     为什么要注意字节序的问题呢?你可能这么问。当然,如果你写的程序只在单机环境下面运行,并且不和别人的程序打交道,那么你完全可以忽略字节序的存在。但是,如果你的程序要跟别人的程序产生交互呢?尤其是当你把你在微机上运算的结果运用到计算机群上去的话。

 

在这里我想说说两种语言。C/C++语言编写的程序里数据存储顺序是跟编译平台所在的CPU相关的,而JAVA编写的程序则唯一采用big endian方式来存储数据。试想,如果你用C/C++语言在x86平台下编写的程序跟别人的JAVA程序互通时会产生什么结果?就拿上面的0x12345678来说,你的程序传递给别人的一个数据,将指向0x12345678的指针传给了JAVA程序,由于JAVA采取big endian方式存储数据,很自然的它会将你的数据翻译为0x78563412。因此,在你的C程序传给JAVA程序之前有必要进行字节序的转换工作。

 

所有网络协议也都是采用big endian的方式来传输数据的。所以有时我们也会把big endian方式称之为网络字节序。当两台采用不同字节序的主机通信时,在发送数据之前都必须经过字节序的转换成为网络字节序后再进行传输。ANSI C中提供了下面四个转换字节序的宏。


一道C语言的试题:请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1。

解答:

int checkCPU()
{
 {
  union w
  {
   int a;
   char b;
  } c;
  c.a = 1;
  return (c.b == 1);
 }
}

嵌入式系统开发者应该对Little-endian和Big-endian模式非常了解。采用Little-endian模式的CPU对操作数的存放方式是从低字节到高字节,而Big-endian模式对操作数的存放方式是从高字节到低字节。例如,16bit宽的数0x1234在Little- endian模式CPU内存中的存放方式(假设从地址0x4000开始存放)为:

内存地址 

存放内容 

0x4000

0x34

0x400 

0x12
  而在Big-endian模式CPU内存中的存放方式则为:

 

内存地址

存放内容

0x4000

0x12

0x4001

0x34


  32bit宽的数0x12345678在Little-endian模式CPU内存中的存放方式(假设从地址0x4000开始存放)为: 

内存地址

存放内容

0x4000

0x78

0x4001

0x56

0x4002

0x34

0x4003

0x12


  而在Big-endian模式CPU内存中的存放方式则为:

内存地址

存放内容

0x4000

0x12

0x4001

0x34

0x4002

0x56

0x4003

0x78


  联合体union的存放顺序是所有成员都从低地址开始存放,解答利用该特性,轻松地获得了CPU对内存采用Little-endian还是Big-endian模式读写。


 

X86 系列 CPU都是 little-endian 的, BIG-ENDIAN、LITTLE-ENDIAN跟多字节类型的数据有关,比如int,short,long型。

比如 int a = 0x05060708

在BIG-ENDIAN的情况下存放为:

字节号 0 1 2 3

数据 05 06 07 08

在LITTLE-ENDIAN的情况下存放为:

字节号 0 1 2 3

数据 08 07 06 05

 

----【转】

以上是关于cpci总线背板是啥,powerPC系列CPU都有哪些的主要内容,如果未能解决你的问题,请参考以下文章

cpci热插拔信号

4u板卡CPCI尺寸

PowerPC E500 MMU详解

基于CPCI系统的高速数字通信接口电路设计与应用

fedora是啥含义及简单介绍

彩电IC总线是啥