��ȨͶ��
��ҳ / �ٿ� / FPGA
FPGA

FPGA

�������ֳ��ɱ�������У�Field��ProgrammableGateArray��
���ࣺ ���ӹ���
���ԣ� ����
����޸�ʱ�䣺 2013��05��25��
�������������2
FPGA��Field��Programmable Gate Array�������ֳ��ɱ�������У�������PAL��GAL��CPLD�ȿɱ�������Ļ����Ͻ�һ����չ�IJ��������Ϊר�ü��ɵ�·��ASIC�������е�һ�ְ붨�Ƶ�·�����ֵģ��Ƚ���˶��Ƶ�·�IJ��㣬�ֿ˷���ԭ�пɱ�������ŵ�·�����޵�ȱ�㡣

FPGA���

����

Ŀǰ��Ӳ���������ԣ�Verilog �� VHDL������ɵĵ�·��ƣ����Ծ����򵥵��ۺ��벼�֣����ٵ���¼�� FPGA �Ͻ��в��ԣ����ִ� IC �����֤�ļ�����������Щ�ɱ༭Ԫ�����Ա�����ʵ��һЩ�������߼��ŵ�·������AND��OR��XOR��NOT�����߸�����һЩ����Ϲ��ܱ������������ѧ����ʽ���ڴ������FPGA���棬��Щ�ɱ༭��Ԫ����Ҳ��������Ԫ�����紥������Flip��flop�������������������ļ���顣ϵͳ���ʦ���Ը�����Ҫͨ���ɱ༭�����Ӱ�FPGA�ڲ����߼��������������ͺ���һ����·����屻������һ��оƬ�һ��������ij�ƷFPGA���߼�������ӿ��԰�������߶��ı䣬����FPGA�����������Ҫ���߼����ܡ�FPGAһ����˵��ASIC��ר�ü���оƬ�����ٶ�Ҫ�����޷���ɸ��ӵ���ƣ��������ĸ���ĵ��ܡ���������Ҳ�кܶ���ŵ������Կ��ٳ�Ʒ�����Ա��޸������������еĴ���͸����˵���ۡ�����Ҳ���ܻ��ṩ���˵ĵ��DZ༭�������FPGA����Ϊ��ЩоƬ�бȽϲ�Ŀɱ༭������������Щ��ƵĿ���������ͨ��FPGA����ɵģ�Ȼ�����ת�Ƶ�һ��������ASIC��оƬ�ϡ�����һ�ַ�������CPLD�����ӿɱ���߼�����������
CPLD��FPGA�Ĺ�ϵ

����1980������ڣ�FPGA�Ѿ���PLD�豸��������CPLD��FPGA������һЩ��Դ������Ŀ��Ա༭�߼���Ԫ��CPLD�߼��ŵ��ܶ��ڼ�ǧ��������߼���Ԫ֮�䣬��FPGAͨ�����ڼ��򵽼����� ����CPLD��FPGA����Ҫ���������ǵ�ϵͳ�ṹ��CPLD��һ���е������ԵĽṹ������ṹ��һ�����߶���ɱ༭�Ľ��֮�͵��߼����к�һЩ��������������ļĴ����������Ľ����ȱ���༭����ԣ�����ȴ�п���Ԥ�Ƶ��ӳ�ʱ����߼���Ԫ�����ӵ�Ԫ�߱��ʵ��ŵ㡣��FPGAȴ���кܶ�����ӵ�Ԫ��������Ȼ�������Ը������ı༭�����ǽṹȴ���ӵĶࡣCPLD��FPGA����һ�������Ǵ������FPGA���и߲�ε�����ģ�飨����ӷ����ͳ˷����������õļ����塣һ������йص���Ҫ�����Ǻܶ��µ�FPGA֧����ȫ�Ļ��߲��ֵ�ϵͳ���������á��������ǵ��������ϵͳ�������߶�̬�������ö��ı䡣һЩFPGA�������豸��һ�������±༭���������ּ����������С�

FPGA����ԭ��

FPGA�������߼���Ԫ����LCA��Logic Cell Array������һ������ڲ������������߼�ģ��CLB��Configurable Logic Block�����������ģ��IOB��Input Output Block�����ڲ����ߣ�Interconnect���������֡�

FPGA�Ļ����ص�

1������FPGA���ASIC��·���û�����ҪͶƬ���������ܵõ����õ�оƬ��2��FPGA��������ȫ���ƻ�붨��ASIC��·��������Ƭ��3��FPGA�ڲ��зḻ�Ĵ�������I��O���š�4��FPGA��ASIC��·�����������̡�����������͡�������С������֮һ��5) FPGA���ø���CHMOS���գ����ĵͣ�������CMOS��TTL��ƽ���ݡ�����˵��FPGAоƬ��С����ϵͳ���ϵͳ���ɶȡ��ɿ��Ե����ѡ��֮һ��FPGA���ɴ����Ƭ��RAM�еij����������乤��״̬�ģ���ˣ�����ʱ��Ҫ��Ƭ�ڵ�RAM���б�̡��û����Ը��ݲ�ͬ������ģʽ�����ò�ͬ�ı�̷�ʽ���ӵ�ʱ��FPGAоƬ��EPROM�����ݶ���Ƭ�ڱ��RAM�У�������ɺ�FPGA���빤��״̬�������FPGA�ָ��ɰ�Ƭ���ڲ��߼���ϵ��ʧ����ˣ�FPGA�ܹ�����ʹ�á�FPGA�ı������ר�õ�FPGA�������ֻ����ͨ�õ�EPROM��PROM��������ɡ�����Ҫ�޸�FPGA����ʱ��ֻ�軻һƬEPROM���ɡ�������ͬһƬFPGA����ͬ�ı�����ݣ����Բ�����ͬ�ĵ�·���ܡ���ˣ�FPGA��ʹ�÷dz���

FPGA����ģʽ

FPGA�ж�������ģʽ��������ģʽΪһƬFPGA��һƬEPROM�ķ�ʽ������ģʽ����֧��һƬPROM��̶�ƬFPGA������ģʽ���Բ��ô���PROM���FPGA������ģʽ���Խ�FPGA��Ϊ΢�����������裬��΢�����������̡����ʵ�ֿ��ٵ�ʱ�����������͹��ĺͳɱ����Ż�ʱ�ӹ���������FPGA��PCB������Ƶĸ����Ե����⣬һֱ�Dz���FPGA��ϵͳ��ƹ���ʦ��Ҫ���ǵĹؼ����⡣�������FPGA������ܶȡ��������������͹��ĺͼ��ɸ���IP�ķ���չ��ϵͳ��ƹ���ʦ�ڴ���Щ�������ܻ����ͬʱ�����ò��������FPGAǰ��δ�е����ܺ�����ˮƽ���������µ������ս�����磬����FPGA����Xilinx����Ƴ���Virtex-5ϵ�в���65nm���գ����ṩ�ߴ�33����߼���Ԫ��1,200��I/O�ʹ���ӲIP�顣�����������ܶ�ʹ���ӵIJ��߱�ø��Ӳ���Ԥ�⣬�ɴ˴��������ص�ʱ���������⡣���⣬��Բ�ͬӦ�ö����ɵĸ����������߼����ܡ�DSP��Ƕ��ʽ�����ͽӿ�ģ�飬Ҳ��ʱ�ӹ����͵�ѹ���������ø������ѡ����˵��ǣ�FPGA���̡�EDA���߹�Ӧ������ͨ���������65nm FPGA���ص������ս��������ǰ��Synplicity��Xilinx����������������ʱ���������Ϲ���С�飬ּ�����̶Ȱ�����ϵͳ��ƹ���ʦ�Ը��졢����Ч�ķ�ʽӦ��65nm FPGA���������������Ӧ��Magma�Ƴ����ۺϹ���Blast FPGA�ܰ��������Ż��IJ��֣��ӿ�ʱ��������� ���FPGA�����÷�ʽ�Ѿ���Ԫ����

FPGA��Ҫ��������

1��Altera ����2��Xilinx ����3��Actel ����4��Lattice ��������Altera��Xilinx��Ҫ����һ����;FPGA������Ҫ��Ʒ����RAM���ա�Actel��Ҫ�ṩ����ʧ��FPGA����Ʒ��Ҫ���ڷ���˿���պ�FLASH���ա�

FPGA��Ƶ�ע������

��������һ���߼����ʦ��Ӳ������ʦ��ϵͳ����ʦ������ӵ��������Щͷ�Σ�ֻҪ�����κ�һ�ָ��ٺͶ�Э��ĸ���ϵͳ��ʹ����FPGA����ͺܿ�����ҪŬ��������������á���Դ������IP���ɡ��ź������Ժ�������һЩ�ؼ�������⡣�������㲻�ض��������Щ��ս����Ϊ�ڵ�ǰҵ�����ȵ�FPGA��˾�﹤����Ӧ�ù���ʦÿ�춼�������Щ���⣬���������Ѿ������һЩ���������ƹ�����ø����ɵ����ָ��ԭ��ͽ��������

I/O�źŷ���

���ṩ���Ķ๦�����š�I/O��׼���˽ӷ����Ͳ�ֶԵ�FPGA���źŷ��䷽��Ҳ������ӵ����ָ��ԭ�򡣾���Altera��FPGA����û�����ָ��ԭ��(��Ϊ��ʵ�������Ƚ�����)��������˼��FPGA���ָ��ԭ��ȴ�ܸ��ӡ�����������һ���������ΪI/O���ŷ����ź�ʱ������һЩ��Ҫ�μǵĹ�ͬ���裺1. ʹ��һ���������ݱ��г����мƻ����źŷ��䣬�Լ����ǵ���Ҫ���ԣ�����I/O��׼����ѹ����Ҫ�Ķ˽ӷ�������ص�ʱ�ӡ�2. ��������̵Ŀ�/���������׼��3. ����ʹ�õڶ����������ݱ��ƶ�FPGA�IJ��֣���ȷ����Щ�ܽ���ͨ�õġ���Щ��ר�õġ���Щ֧�ֲ���źŶԺ�ȫ�ּ��ֲ�ʱ�ӡ���Щ��Ҫ�ο���ѹ��4. �������������������ݱ�����Ϣ�����������׼���ȷ��������Ƴ̶������źŵ������ϣ���������������С�ġ����磬�������Ҫ�ȷ��䴮�����ߺ�ʱ���źţ���Ϊ����ͨ��ֻ���䵽һЩ�ض����š�5. ���������Ƴ̶����·����ź����ߡ�������׶Σ�������Ҫ��ϸȨ��ͬʱ�������(SSO)�Ͳ�����I/O��׼��������⣬�����ǵ�����кܶ�����������ʹ���˺ü�����ͬ��I/O��׼ʱ�������������Ҫ�ֲ�/����ʱ�ӣ��㽫������Ҫʹ�ø������߸����Ĺܽţ������ǰ��ס���Ҫ����������޷�Ϊ�䰲������ʵ����š����ij���ض�����ѡ���I/O��׼��Ҫ�ο���ѹ�źţ���ס�Ȳ�Ҫ������Щ���š�����źŵķ���ʼ��Ҫ���ڵ����źš����ij��FPGA�ṩ��Ƭ�ڶ˽ӣ���ô��Ҳ�������������������Թ���6. �ں��ʵĵط�����ʣ����źš�������׶Σ�����дһ��ֻ�����˿ڷ����HDL�ļ���Ȼ��ͨ��ʹ�ù�Ӧ���ṩ�Ĺ��߻�ʹ��һ���ı��༭���ֶ�����һ�������ļ���ΪI/O��׼��SSO�����ӱ�Ҫ��֧����Ϣ��׼������Щ�����ļ�����������в��ֲ��߹�����ȷ���Ƿ������һЩ׼���������һ������ķ��䡣�⽫ʹ������Ƶij�ʼ�׶ξͺͲ��ֹ���ʦһ��������ͬ�滮PCB�����ߡ�����滮��ɢ��������ź������ԡ�FPGA���߿��ܿ�������Щ�����ṩ��������Э��������Щ���⣬��������ȷ���˽���Ĺ��߰��Ĺ��ܡ�����ѯһλ����ר�ҵ�ʱ��Խ�������Խ�п�����Ҫȥ����һЩ���ӵ��������Ʒ���������Щ���ܿ���ͨ��һЩǰ�ڷ������Ա��⡣һ����ʵ����������źŷ��䣬���Ҫ�������ļ��������ǡ�����CMOS�������Ҫ�����������ʣ��ڲ��ģ���·����©��ģ���̬�ģ��Լ����صģ����ݣ������ŵ�·˲��ʱ��VDD���֮���·���������ڲ����ʡ�©�繦����CMOS�����ձ���ڵļ���ЧӦ����ġ������ع��������Ը��ص���,�ŵ���ɵġ����ع������·���ĺ���һ���Ϊ��̬���ġ�������ܽ��;�̬���ĺͶ�̬���ĵ���Ƽ��ɡ�

���;�̬����

���

��Ȼ��̬�����붯̬������ȿ��Ժ��Բ��ƣ�Ȼ���Ե�ع�����ֳ��豸���Ե�ʮ����Ҫ�����豸ͨ���������ʱ������ˡ���̬�����������ڶ࣬��������û����ȫ�ضϻ��ͨ��״̬�µ�I/O�Լ��ڲ�������Ĺ����������ڲ����ߵĵ��衢��������̬���������ϵ������������衣����ʧ�Լ����У����ֱ����ϢҲ��һ���ľ�̬���ʡ����۶���һ�ַ���ʧ�Լ����������Ϣ�洢�����ľ�̬������

���ֽ��;�̬���ĵ���Ʒ���

��������Ӧ�г�ֵĵ�ѹ��ƽ��������о���ܶ�����ȫͨ����رյġ�����I/O���ϵ���������������Ҫ����һ���ĵ�������˾�������ʹ����Щ���衣�������������˫������ܣ���Щ������ά��һ���㶨�������Ӷ������˾�̬��������ʱ�����Ű��������Ƽ������������͵�ƽ�����յ�ʱ������������Ӿ�̬�������ڽ���ƻ���Ϊ�������ʱ������������I/O��ʹ�á�eX����LP��ʽ���ŵ�ʹ��Actel eXϵ�����������ĵ͹���“����”ģʽ���ڸ������������ߵ�ƽ800ns���������뼫�͹��ʴ���ģʽ����������С��100μA���ڵ͹���ģʽ�£�����I/O����ʱ�������⣩��������̬�����ں�ȫ���ϵ硣�����ں˱��ϵ磬�������д洢����Ϣ�ᶪʧ���ڽ��빤��ģʽ����������������ƽ200ms��ʱ���û����ٴζ�������ʼ����ͬ�����û�ҲӦ�ر�����ͨ��CLKA��CLKB�Լ�HCLK�����ʱ�ӡ�Ȼ����Щʱ�Ӳ���������̬��ʱ�ӾͿɽ����������Ӷ����ӹ��ģ�����ڵ͹���ģʽ�£�ʱ��������봦���߼�0���߼�1����ʱ�û�������ֹʱ�ӽ����������ڴ˳��ϣ��û���ʹ����CLKA��CLKA���ڵ������������Ų�������мӽ�CLKINT��������ʱ�ӽ�ͨ������ʱ�����ŵ��������������������ͨ��CLKINT�������ṩʱ����Դ��

�������������·�����ڳ���I/O����̬�ģ�����û����ص���ʱ�ӽ�����������Ȼ������һ���ŵ�·�����0.6ns�Ľϴ�ʱ����ʱ���Һ����ڶ����͹���������ǿ��Խ��ܵġ�ע��Ӧ����CLKINT��������ص�CLKA��CLKB���Žӵء����⻹Ҫע�⣬CLKINTֻ����������ʱ�ӣ�HCLK�����߱����ڲ����������ӵ�HCLK�����������HCLK��Դ���ܱ������������������仰˵�����ʹ��LP���žͲ���ʹ��HCLK��ʹ��HCLKʱ��Ӧ���ⲿ�ض�ʱ���źš�

���Ͷ�̬����

��̬��������ʱ�ӹ������������ڿ���ʱ�Ĺ��ġ���CMOS��·����̬���Ļ�����ȷ�����ܹ��ġ���̬���İ��������ɷ֣���Ҫ�ǵ��ݸ��س����ŵ磨�ڲ���I/O���Լ���·������������̬�������ڲ����ⲿ�����������䡢�ŵ����ĵġ���������������I/O���أ������Ķ�̬���������ܹ��ĵ���Ҫ���֡�������и���������������̬��������ʽ����p=CL×V 2 DD×fʽ�У�CL�ǵ��ݸ��أ�VDD�ǵ�Դ��ѹ��f���ǿ���Ƶ�ʡ��ܹ�����ÿ������������֮�ܺ͡�����VDD�ǹ̶��ģ������ڲ����ľ�Ҫ����ƽ���߼�����Ƶ�ʣ�����ÿ��ʱ���ش����߼����������������������磬�ر��Ǹ�Ƶ�ź����������еĵ���ֵ���Ե͹�����ƣ���Ҫ��ϵͳ�����յ�ÿ����Ƽ����в�ȡ��ӦԤ����ʩ������Խ�ߣ�Ч��Խ�á�

FPGA��CPLD�ı��ͷ���

FPGA��CPLD�ı��ͷ�����Ҫ�Ǹ�����ṹ�ص�͹���ԭ����ͨ���ķ��෽���ǣ����Գ˻���ṹ��ʽ�����߼���Ϊ��������ΪCPLD����Lattice��ispLSIϵ�С�Xilinx��XC9500ϵ�С�Altera��MAX7000Sϵ�к�Lattice(ԭVantis)��Machϵ�еȡ����Բ�����ṹ��ʽ�����߼���Ϊ��������ΪFPGA����Xilinx��SPARTANϵ�С�Altera��FLEX10K��ACEX1Kϵ�еȡ�����FPGA��CPLD���ǿɱ��ASIC����,�кܶ๲ͬ�ص�,������CPLD��FPGA�ṹ�ϵIJ���,���и��Ե��ص�:��CPLD���ʺ���ɸ����㷨������߼�,FP GA���ʺ������ʱ���߼������仰˵,FPGA���ʺ��ڴ������ḻ�Ľṹ,��CPLD���ʺ��ڴ��������޶��˻���ḻ�Ľṹ����CPLD������ʽ���߽ṹ����������ʱ���ӳ��Ǿ��ȵĺͿ�Ԥ���,��FPGA�ķֶ�ʽ���߽ṹ���������ӳٵIJ���Ԥ���ԡ����ڱ����FPGA��CPLD���и��������ԡ�CPLDͨ���޸ľ��й̶�������·���߼����������,FPGA��Ҫͨ���ı��ڲ����ߵIJ��������;FP GA�����߼����±��,��CPLD�����߼����±�̡���FPGA�ļ��ɶȱ�CPLD��,���и����ӵIJ��߽ṹ���߼�ʵ�֡���CPLD��FPGAʹ�����������㡣CPLD�ı�̲���E2PROM��FASTFLASH����,�����ⲿ�洢��оƬ,ʹ�ü򵥡���FPGA�ı����Ϣ�������ⲿ�洢����,ʹ�÷������ӡ���CPLD���ٶȱ�FPGA��,���Ҿ��нϴ��ʱ���Ԥ���ԡ���������FPGA���ż����,����CLB֮����÷ֲ�ʽ����,��CPLD���߼��鼶���,�������߼���֮��Ļ����Ǽ���ʽ�ġ����ڱ�̷�ʽ��,CPLD��Ҫ�ǻ���E2PROM��FLASH�洢�����,��̴����ɴ�1���,�ŵ���ϵͳ�ϵ�ʱ�����ϢҲ����ʧ��CPLD�ֿɷ�Ϊ�ڱ�����ϱ�̺���ϵͳ������ࡣFPGA�󲿷��ǻ���SRAM���,�����Ϣ��ϵͳ�ϵ�ʱ��ʧ,ÿ���ϵ�ʱ,��������ⲿ�������������д��SRAM�С����ŵ��ǿ��Ա�������,���ڹ����п��ٱ��,�Ӷ�ʵ�ְ弶��ϵͳ���Ķ�̬���á���CPLD�����Ժ�,FPGA�����Բ��һ�������,CPLD�Ĺ���Ҫ��FPGA��,�Ҽ��ɶ�Խ��Խ���ԡ�

FPGA��Ӧ��

������·�����FPGA��Ӧ��

�����߼��������߼���FPGA���ڷ������ñȽϴ������Ҳ��FPGAӦ�õĻ�ʯ����ʵ���ڵ�·�����Ӧ��FPGA���ѶȻ��DZȽϴ����Ҫ�󿪷���Ҫ�߱���Ӧ��Ӳ��֪ʶ����·֪ʶ��������Ӧ���������������ߣ��ⷽ����˲����ǽ�ȱ�ģ������������¼������²�Ʒ�Ŀ����ɹ��IJ�Ʒ������г�����������Ʒ����Ʒ�����Ӧ���ڲ�Զ�Ľ�����ͨ�ú�ר��IP����ƽ���Ϊһ��������ҵ�����·��Ƶ�ǰ���DZ���Ҫ�߱�һ����Ӳ��֪ʶ����������棬������ѧ����Ȼ�����������Ǻ���Ҫ�ģ�Խ�õ�λ��Խ�����˵�·�����ǻƽ��룮

������Ʒ���

����Գ���ļ���Ӧ�õ�ijЩ�ض�������ͨѶ����Ƶ����Ϣ�����ȵȿ�����������ҵ��Ҫ���ܱ���ҵ�ͻ����ܵIJ�Ʒ�ⷽ����Ҫ��FPGA������רҵ�����Ľ�����⣬���⻹�о�����רҵ�ͻ��Ľ��������Ʒ��ƻ�����רҵ�������Ʒ�����ò�Ʒ��ǰ���ص������ܣ����߶Լ۸����в�Ʒ�����ʵ�ֲ�Ʒ����Ϊ��ҪĿ�ģ�FPGA������һ��ʵ���ֶ����������FPGA��Ϊ�߱��ӿڣ����ƣ�����IP����ǶCPU���ص�������ʵ��һ������򵥣��̻��̶ȸߣ�����ȫ���ϵͳ��Ʒ��ƽ���FPGA����Ӧ��������г������м���ı����Ե�����ռ��Ʒ��ƶԼ�����Ա��Ҫ��Ƚϸߣ�·;Ҳ�Ƚ�������������������ҵ�������齨���׷��Ŷӣ���״̬��ֻҪ���룬ǰ;������Ʒ�����һ��ְҵ��չ����λ�����Ǽ򵥵İ��þ��������ģ���Ʒ����������ʹ�������ҵ����ҵ�ң���һ�����ڵķ�չ�ȵ�ͻ���

����ϵͳ��Ӧ��

ϵͳ����Ӧ����FPGA�봫ͳ�ļ����������ϣ�ʵ��һ��FPGA��ļ����ϵͳ����Xilinx��V-4, V-5ϵ�е�FPGA��ʵ����ǶPOWER��PC��CPU, Ȼ������ϸ�����Χ���ܣ�ʵ��һ�����������������ƽ̨����LINIX��ϵͳ���ϵͳҲ��֧�ָ��ֱ�׼����͹��ܽӿڣ���ͼ��ӿڣ�������ڿ��ٹ���FPGA����ϵͳ�����Ǻ��а����ġ����֣�ɽկ��ζ��Ũ��ϵͳ�������Ʋ�һ�������ԣ�����ARMϵͳ�ľ����������������ӳ�FPGA�����ƣ���ʵ��һЩ��ɫϵͳҲ��һ�ַ�չ��������ϵͳ��Ӧ���У�������Ա���߱�ϵͳ�����俪��������ֻ�Ǹ������ûʲô����ģ���Ȼ�豸��������Ŀ�������һ���������ϵͳ��Ӧ�ÿ������ߣ������߱���㿪���������ܿ��ܻ��ɰ����ߣ�����ܶ��˻�����ҳ�����ܳ����������������Ǽ�����˿�����ϣ���ܰ�����ѧFPGA����ãȻ�޴������һ��˼·������һ����������ҵ���кܺõĸ��˳ɹ����ᡣ��Ҳ�϶���һ�������ܼ��ҵ���ҵ���ؼ����ľ����ٶȺ���ȵ�Ȼ�����г���Ӧ������

  • ��������
  • ���Ŵ���

���������� 44030502002758��