86235

Разработка спецпроцессора, выполняющего макрооперацию (3A/0,5B)+4С*0,75D

Курсовая

Коммуникация, связь, радиоэлектроника и цифровые приборы

Целью данного курсового проекта является разработка устройства, проектируемого на базе ПЛИС фирмы Altera. Данное устройство является специальным процессором (спецвычислитель), выполняющим арифметическую макрооперацию.

Русский

2015-04-04

620.5 KB

3 чел.

    Министерство образования Российской Федерации

Пензенский государственный университет

Кафедра «Вычислительная техника»

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе

по курсу «Моделирование»

на тему «Разработка спецпроцессора, выполняющего макрооперацию (3A/0,5B)+4С*0,75D»

Выполнил:

       студент группы 08ВВ1

       Варакин М.

Принял:

         к.т.н., доцент Захаров А.П.

Пенза 2011

                                    Содержание

[1] Постановка задачи

[2] Проектирование операционного автомата

[2.1] Элементная база

[2.2] Обработка микрокоманд

[3] Проектирование управляющего автомата

[4] Моделирование работы схемы

[4.1] Контроль правильности выполнения

[5] Оценка быстродействия

[6] Оценка потребляемой мощности

[7] Заключение

[8]
Список использованной литературы


Введение

Наиболее распространенной задачей проектирования цифровых устройств является моделирование. Моделирование позволяет определить свойства проектируемого устройства, а так же выявить ошибки при проектировании и исправить их еще до стадии производства, что в свою очередь позволяет минимизировать затраты на производство продукции.

Известно, что любое цифровое устройство характеризуется не только элементами, из которых оно состоит, но и различными временными параметрами, которые задают его свойства и характеристики. Поэтому при моделировании необходимо учитывать (включать в модель) не только элементы, но и их временные характеристики. Следовательно, инструмент моделирования должен учитывать все вышеперечисленные особенности цифровых устройств.

Язык VHDL способен работать во всех трех аспектах, характеризующих аппаратуру:

  •  функциональность (поведение);
  •  структура (элементы);
  •  время (задержка).

Поэтому язык обладает возможностью реализовать моделирование на двух уровнях – поведенческом и структурном, что делает его наиболее удобным и подходящим для моделирования цифровых устройств.

Вследствие того, что язык легко воспринимается как машиной, так и человеком он может использоваться на этапах проектирования, верификации, синтеза и тестирования аппаратуры также как и для передачи данных о проекте, модификации и сопровождения.

  1.  Постановка задачи

Целью данного курсового проекта является разработка устройства, проектируемого на базе ПЛИС фирмы Altera. Данное устройство является специальным процессором (спецвычислитель), выполняющим арифметическую макрооперацию.

Макрооперация реализуется упорядоченным выполнением микроопераций по сигналам микрокоманд, поступающих от управляющего автомата.

Исходные данные на проектирование:

  •  формат обрабатываемых данных – 16 двоичных разрядов;
  •  код входных данных – обратный;
  •  операция выполняется в формате с фиксированной точкой;
  •  спецвычислитель включает 2 автомата: операционный автомат (ОА) и управляющий автомат (УА);
  •  ОА реализовать с использованием lpm-модулей библиотеки САПР QuartusII;
  •  УА спроектировать на языке VHDL. Допускается реализация УА с использованием специального ПО (StateCad);
  •  Одну из сложных операций реализовать без использования библиотечных lpm-модулей.

Так же необходимо произвести оценку спроектированного устройства по быстродействию и потребляемой мощности.

Разрабатываемый процессор должен выполнять следующую макрооперацию:  (3A/0,5B)+4С*0,75D

  1.  Проектирование операционного автомата

Принципиальная схема операционного автомата приведена в Приложении 1.

По заданию операционный автомат следует реализовать, используя lpm-модули.  Структурная схема  операционного автомата приведена на рисунке 1.

Рис.1 Структурная схема

Следуя этому, операционный блок включает в себя:

  •  4  обычных регистра;
  •  4 сдвигающих регистра;
  •  2 сумматора;
  •  1 делитель;
  •  1 умножителя;
  •  1 вычитатель;
  •  4 D-триггеров для хранения флагов
  •  блок проверки деления на ноль делителя;
  •  4 преобразователя из обратного в дополнительный код;
  •  1 преобразователь из 32 бит в 16 бит.

Данные в операционный блок подаются по 16 разрядным шинам D_A, D_ B, D_C, D_D.

  1.  Элементная база

Рассмотрим подробнее составные части операционного блока.

Обычные регистры:

Регистры используются для хранения входных данных, ожидающих обработки. Условное графическое обозначение регистра изображено на рисунке 2.

Рисунок 2. УГО обычного регистра

Регистр имеет 3 входных сигнала:

  •  data[15..0] – информационный вход, принимающий 15 разрядные данные;
  •  clock – вход синхронизации (по нарастающему фронту);
  •  load – вход загрузки данных;

Выходной сигнал:

  •  q[15..0]информационный выход.

Сдвигающие регистры:

Регистры используются для сдвига входных данных. Условное графическое обозначение регистра изображено на рисунке 3.

Рисунок 3. УГО сдвигового  регистра

Регистр имеет 2входных сигнала:

  •  data[15..0] – информационный вход, принимающий 16 разрядные данные;
  •  distance – вход сдвига(сколько сдвигов нужно сделать);

Выходной сигнал:

  •  result[15..0]информационный выход.

Сумматор:

В данном спецвычислителе сумматор предназначен для выполнения операций сложения и вычитания. Условное графическое обозначение сумматора изображено на рисунке 4.

Рисунок 4. УГО сумматора

Сумматор имеет 3 входных сигнала:

  •  dataа[15..0] и datab[15..0] – информационные входы операндов A и B соответственно.
  •  clock – вход синхронизации (по нарастающему фронту);

3 выходных сигнала:

  •  result[15..0] информационный выход;
  •  coutвыход переноса.
  •  overflowвыход переполнения.

Делитель:

Делитель выполняет операцию деления над знаковыми 16 разрядными числами. Следует отметить, что у делителя имеется два выхода: quotient – целая часть, полученная в результате деления, и remain – остаток. Условное графическое обозначение делителя изображено на рисунке 6.

Рисунок 6. УГО делителя

Делитель имеет 4 входных сигнала:

  •  numer[15..0]информационный вход (делимое);
  •  denom[15..0]информационный вход (делитель);
  •  clockвход синхронизации;

2 выходных сигнала:

  •  qountient[15..0] – информационный выход (целая часть);
  •  remain[15..0]информационный выход (остаток).

Умножитель:

В курсовом проекте по заданию одну из операций необходимо выполнить без использования библиотечных lpm-модулей. Был сделан умножитель на языке VHDL.

Листинг умножителя на языке VHDL:

LIBRARY ieee;

USE ieee.std_logic_1164.all;

use IEEE.std_logic_arith.all;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY MULL IS

 PORT

( clk : IN STD_LOGIC;

 A : IN STD_LOGIC_VECTOR(15 downto 0);

 B : IN STD_LOGIC_VECTOR(15 downto 0);

 count: in std_logic_vector (4 downto 0);

 en : IN STD_LOGIC;

 Q : OUT STD_LOGIC_VECTOR(31 downto 0);

 INTA : OUT STD_LOGIC );

 

END MULL;

ARCHITECTURE MULL_architecture OF MULL IS

shared variable R1, R2:std_logic_vector (15 downto 0):=x"000";

shared variable RSM, minusRSM:std_logic_vector (15 downto 0):=x"000"&'0';

shared variable countvar:std_logic_vector (4 downto 0);

begin

process (clk,en)

begin

 if (clk'event and clk = '1'and en = '1') then

  --countvar := count;

   if(countvar = "00000") then

    R1 := A;

    R2 := B;

    INTA <= '1';

    countvar := countvar + 1;

   else

    if (R2(0) = '1') then

     RSM := RSM + ('0'&R1);

     R2 := RSM(0)&R2(15 downto 1);

     if(RSM(16) = '1') then

    RSM := '0'&RSM(16)&RSM(15 downto 1);

     else

    RSM := '0'&RSM(15)&RSM(15 downto 1);

     end if;

     countvar := countvar + 1;

    else

     R2 := RSM(0)&R2(15 downto 1);

    RSM := '0'&RSM(15)&RSM(15 downto 1);

     countvar := countvar + 1;

    end if;

    

    if (countvar = "10000") then

     if(B(15) = '1') then

      minusRSM := '0'&not(A)+1;

      RSM := RSM + minusRSM;

     end if;

     INTA <= '0';

     R2 := RSM(0)&R2(15 downto 1);

    RSM := '0'&RSM(15)&RSM(15 downto 1);

     Q <= RSM(15 downto 0)&R2;

      end if;

   end if;

 end if;

END process;

END MULL_architecture;

Условное графическое обозначение умножителя изображено на рисунке 7.

Рисунок 7. УГО умножителя

Умножитель имеет 5 входных сигнала:

  •  A[15..0] и B[15..0] – информационные входы операндов;
  •  clk – вход синхронизации;
  •  count[4..0] – вход подсчёта тактов умножения;
  •  en – вход разрешения работы умножителя.

2 выходных сигнала:

  •  Q[31..0] – информационный выход (результат умножения);
  •  INTA – сигнал прерывания управляющего автомата.

Сигнал INTA используется для прерывания управляющего автомата, т.к. операция умножения длинная и выполняется за 16 тактов, необходимо продлить время управляющего сигнала на соответствующую длину. Сигнал INTA заставляет управляющий автомат оставаться в текущем состоянии.

Счётчик в умножении используется с применением библиотечных lpm-модулей. Счётчик является суммирующим. Условное графическое обозначение счётчика изображено на рисунке 8.

Рисунок 8. УГО счётчика

Счётчик имеет 1 входной сигнал:

  •  clock – вход синхронизации;

выходной сигнал:

  •  q [3..0] – информационный выход;

Вход en в алгоритме умножения ограничен другим модулем, написанным на языке VHDL. Условное графическое обозначение счётчика изображено на рисунке 9.

Рисунок 9. УГО разрешения работы умножителя

Листинг разрешения работы умножителя на языке VHDL:

LIBRARY ieee;

USE ieee.std_logic_1164.all;

     ENTITY ENABLE IS

PORT

(

 clk : IN STD_LOGIC;

 E : IN STD_LOGIC_VECTOR(4 downto 0);

 enable : OUT STD_LOGIC

);

END ENABLE;

ARCHITECTURE ENABLE_architecture OF ENABLE IS

BEGIN

process (clk)

begin

  if (clk'event and clk = '1') then

     if E = "10000" then

     enable <= '0';

     else enable <= '1';

     end if;

  end if;

END process;

END ENABLE_architecture;

4 преобразователя из обратного в дополнительный код и из дополнительного в обратный:

Условное графическое изображение преобразователей изображено на рисунке 10.

                                  

                                 

Рисунок 10. УГО преобразователей кодов.

Конвертор работает по сигналу синхронизации CLK. Конвертор добавляет 1 к отрицательному числу, поступившему с входной шины

Листинг конвертора в дополнительный код на языке VHDL:

LIBRARY ieee;

USE ieee.std_logic_1164.all;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY INDOPCOD IS

PORT

(

 clk : IN STD_LOGIC;

 D : IN STD_LOGIC_VECTOR(15 downto 0);

 Q : OUT STD_LOGIC_VECTOR(15 downto 0) );

 

END INDOPCOD;

ARCHITECTURE INDOPCOD_architecture OF INDOPCOD IS

 

BEGIN

process (clk) begin

 if clk'event and clk = '1' then

  if D(15) = '1' then

   Q <= D + "0000000000000001";

  else

   Q <= D;

  end if;

 end if;

end process;

END INDOPCOD_architecture;

1 преобразователь из дополнительный кода в обратный, из 32 бит в 16:

Условное графическое изображение преобразователей изображено на рисунке 10.

                                  

                                 

Рисунок 10. УГО преобразователей кодов.

Конвертор работает по сигналу синхронизации CLK. Конвертор вычитает 1 из отрицательному числа, поступившему с входной шины и уменьщает размерность кода до 16 бит.

Листинг конвертора из дополнительного кода на языке VHDL:

LIBRARY ieee;

USE ieee.std_logic_1164.all;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY preobr IS

PORT

(

 clk : IN STD_LOGIC;

 A : IN STD_LOGIC_VECTOR(31 downto 0);

 B : OUT STD_LOGIC_VECTOR(15 downto 0);

 loss : OUT STD_LOGIC :='0'

);

 

 

END preobr;

--  Architecture Body

ARCHITECTURE preobr_architecture OF preobr IS

shared variable C: STD_LOGIC_VECTOR (31 downto 0):=x"00000000";

shared variable dop: STD_LOGIC_VECTOR (15 downto 0):=x"0000";

 

BEGIN

process (CLK) begin

 if(CLK'event and CLK = '1') then

  if(A(31) = '1') then

   C := A-"00000001";

  else

   C := A;

  end if;

  if(C(31) = '1') then

   if(C(30 downto 15)= x"FFFF") then

    dop(15):=C(31);

    dop(14 downto 0) := C(14 downto 0);

    loss <= '0';

   else

    loss <= '1';

   end if;

  end if;

  if(C(31) = '0') then

   if(C(30 downto 15)= x"0000") then

    dop(15):=C(31);

    dop(14 downto 0) := C(14 downto 0);

    loss <= '0';

   else

    loss <= '1';

   end if;

  end if;

 end if;

end process;

B <= dop;

END preobr_architecture;

D-триггеры для хранения флагов:

  Условное графическое изображение триггеров изображено на рисунке 12. В эти триггеры записывается флаг на переполнение.

Рисунок 12. УГО D-триггера

D-триггер имеет 2 входных сигнала:

  •  D – информационный вход;
  •  clk – вход синхронизации;

 выходной сигнал:

  •  Qинформационный выход;

Блок проверки деления на ноль делителя:

   Условное графическое изображение изображено на рисунке 13. Этот блок проверяет делитель на ноль, и если делитель равен нулю, то установится флаг ZF=1, иначе ZF=0.

Рисунок 13. УГО блок проверки деления на ноль

Этот блок имеет 2 входных сигнала:

  •  D[15..0] – информационный вход;
  •  clk – вход синхронизации;

 выходной сигнал:

  •  Z – флаг ZF ;

Листинг блока проверки деления на ноль делителя на языке VHDL:

LIBRARY ieee;

USE ieee.std_logic_1164.all;

ENTITY Flag_Z IS

PORT

(

 D : IN STD_LOGIC_VECTOR(15 downto 0);

 clk : IN STD_LOGIC;

 Z : OUT STD_LOGIC

);

 

END Flag_Z;

ARCHITECTURE Flag_Z_architecture OF Flag_Z IS

BEGIN

process (CLK)

begin

 if CLK'event and CLK = '1' then

  if D = "0000000000000000" then

   Z <= '1';

  else

   Z <= '0';

  end if;

 end if;

end process;

END Flag_Z_architecture;

  1.  Обработка микрокоманд

Микрокоманды в операционном автомате обрабатываются под управлением управляющих сигналов от управляющего автомата. Вся работа операционного автомата разбита на несколько состояний(11):

  1.  Прием операндов А, B, C, D в регистры RA1, RB1, RC1, RD1.
  2.  Выполнение операций преобразования обратного кода А, B, C, D в дополнительный.
  3.  Прием операндов А, B в регистры RA1, RB1.
  4.  Получение операндов 3А, 0,75D.
  5.  Выполнение операции деления 3A/0,5B.
  6.  Выполнение операции умножение 4C*0,75D.
  7.  Выполнение операции (3A/0,5B)+(4C*0,75D).
  8.  Выполнение операции преобразования (3A/0,5B)+(4C*0,75D) из дополнительного кода в обратный.
  9.  Конец вычислений и запись флагов.

Таким образом, с управляющего автомата в операционный автомат подаются 10 управляющих сигналов, в свою очередь, в управляющий автомат от операционного автомата приходят сигналы, влияющие на работу управляющего автомата:

  •  INTA – прерывание управляющего автомата на время выполнения операции умножения;
  •  Ov – остановка управляющего автомата, т.к. в вычислениях произошло переполнение.
  •  Stop - остановка управляющего автомата, т.к. произошло деление на ноль.

  1.  Проектирование управляющего автомата

Управляющий автомат был спроектирован на языке VHDL. Условное графическое обозначение управляющего автомата изображено на рисунке 14.

Рисунок 14. УГО управляющего автомата

Управляющий автомат имеет 5 входов:

  •  CLKвход синхронизации;
  •  RESETвход сброса;
  •  INTAвход прерывания;
  •  STOPвход остановки;
  •  OVF – вход переполнения.

и 11 выходов:

  •  Y1,У2,У3,Y4[1..0],Y5…Y11 – управляющие сигналы;

Граф-схема алгоритма работы управляющего автомата:

Рисунок 15. Алгоритм работы управляющего автомата

Рисунок 16. Выполнение состояний управляющего автомата

Листинг УА на языке VHDL:

LIBRARY ieee;

USE ieee.std_logic_1164.all;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY UPR_AVT IS

PORT

(

 clk : IN STD_LOGIC;

 RESET : IN STD_LOGIC;

 STOP : IN STD_LOGIC;

 INTA : IN STD_LOGIC;

 F_O : IN STD_LOGIC;

 Y1 : OUT STD_LOGIC;

 Y2 : OUT STD_LOGIC;

 Y3 : OUT STD_LOGIC;

 Y4 : OUT STD_LOGIC_VECTOR(1 downto 0);

 Y5 : OUT STD_LOGIC;

 Y6 : OUT STD_LOGIC;

 Y7 : OUT STD_LOGIC;

 Y8 : OUT STD_LOGIC;

 Y9 : OUT STD_LOGIC;

 Y10 : OUT STD_LOGIC

  

);

END UPR_AVT;

ARCHITECTURE UPR_AVT_architecture OF UPR_AVT IS

type state_type is (S0, S1, S2, S3, S4, S5, S6, S7, S8, S9, S10, Sstop);

signal ya_state: state_type;

BEGIN

process (Reset,clk,INTA)

begin

 if(Stop = '1') then

  ya_state <= Sstop;

 elsif(Reset = '1') then

   ya_state <= S0;

  elsif INTA = '1' then

    ya_state <= ya_state;

    --ya_state <= S6;

   elsif F_O = '1' then

     ya_state <= Sstop;

    elsif clk'event and clk = '1' then

      case ya_state is

      when S0 => ya_state <= S1;

      when S1 => ya_state <= S2;

      when S2 => ya_state <= S3;

      when S3 => ya_state <= S4;

      when S4 => ya_state <= S5;

      when S5 => ya_state <= S6;

      when S6 => ya_state <= S7;

      when S7 => ya_state <= S8;

      when S8 => ya_state <= S9;

      when S9 => ya_state <= S10;

      when S10 => ya_state <= Sstop;        

      when Sstop => ya_state <= Sstop;

      end case;

 end if;

       END PROCESS;

PROCESS (ya_state) begin

case ya_state is

when S0 => Y1<='0'; Y2<='0'; Y3<='0'; Y4<="00"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S1 => Y1<='1'; Y2<='0'; Y3<='0'; Y4<="00"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S2 => Y1<='0'; Y2<='1'; Y3<='0'; Y4<="00"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S3 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="01"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S4 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S5 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='1'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S6 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='0'; Y6<='1'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S7 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='0'; Y6<='0'; Y7<='1'; Y8<='0';Y9<='0';Y10<='0';

when S8 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='0';

when S9 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='1';Y9<='0';Y10<='0';

when S10 => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='1';Y10<='0';

when Sstop => Y1<='0'; Y2<='0'; Y3<='1'; Y4<="10"; Y5<='0'; Y6<='0'; Y7<='0'; Y8<='0';Y9<='0';Y10<='1';

end case;

end PROCESS;

END UPR_AVT_architecture;


  1.  Моделирование работы схемы

Выполнив компиляцию проекта, получаем следующий отчёт (рисунок 17):

Рисунок 17. Отчёт компиляции проекта

По полученным данным можно сделать вывод, что использовано в общем 95% контактов; число логических элементов, занятых для реализации проекта, составило 7%, количество регистров - 375.

Результаты моделирования показаны на рисунках 18, 19,20.

Рисунок 18. Временные диаграммы для первого набора входных данных

Рисунок 19. Временные диаграммы для второго набора входных данных

Рисунок 20. Временные диаграммы для деления на ноль

В регистры операнды поступают с шины данных в обратном коде в через 10нс и соответственно в регистрах А, B, С, D появляются значения.

Первый набор входных данных

A = 10[10]

B = 8[10]

C = 3[10]

D = 8[10]

По истечению 265нс появляется результат операции. В нашем случае результат равен = 79 [10]

Второй набор входных данных

A = -3[10]

B = -4[10]

C = -2[10]

D = -4[10]

Результат вычислений равен = 11[10].

  1.  Контроль правильности выполнения

В первом наборе при ручной проверки операции получаем следующее:

  1.  A= 1010];
  2.  B=810];
  3.  C=3[10];
  4.  D = 8[10];
  5.  3A=30[10];
  6.  0.5B=410];
  7.  4C=12[10];
  8.  0.75D=6
  9.  3A/0.5B=7
  10.  4C*0.75D=72
  11.  (3A/0.5B)+( 4C*0.75D)=79

Как видно результат ручного расчета совпал с результатом моделирования.

Во втором наборе при ручной проверки операции получаем следующее:

  1.  A= -2[10];
  2.  B=-310];
  3.  C=-1[10];
  4.  D = -3[10];
  5.  3A=-6[10];
  6.  0.5B=-210];
  7.  4C=-4[10];
  8.  0.75D=-2
  9.  3A/0.5B=3
  10.  4C*0.75D=8
  11.  (3A/0.5B)+( 4C*0.75D)=11

Как видно результат ручного расчета совпал с результатом моделирования.

  1.  Оценка быстродействия

Была произведена оценка быстродействия системы. Результаты показаны на рисунке 21.

Рисунок 21. Оценка быстродействия

По данным результатам можно сделать вывод:

  •  наибольшая задержка в прохождении сигнала равна – 30.741нс;
  •  тактовая частота работы – 46.62 МГц.

  1.  Оценка потребляемой мощности

Результаты оценки потребляемой мощности показаны на рисунке 12.

По данным результатам можно сделать следующие выводы:

  •  общая мощность потребления  333.31 мВ;
  •  динамическая мощность  0 мВ;
  •  статическая мощность  303.07 мВ;

Заключение

Моделирование позволяет определить свойства или параметры разрабатываемого устройства и ошибки в его разработке. Построение моделей различного уровня решает различные задачи проектирования: синтез, анализ, корректировка, диагностика и так далее. Для решения данных задач используются различные системы автоматизированного проектирования, а так же специализированные языки описания цифровых устройств. Язык VHDL является наиболее удобным и подходящим как для моделирования, так и для разработки в целом.

Можно сделать вывод, что моделирование является неотъемлемой частью создания любого электронного устройства.


Список использованной литературы

  1.  В.Стешенко. Школа разработки аппаратуры цифровой обработки сигналов на ПЛИС. // Chip News,1999, №8-10, 2000 №1 – 3;
  2.  Н.П. Вашкевич, Н.П. Сергеев. Основы вычислительной техники. Высшая школа, Москва, 1988;
  3.  В.Стешенко. ПЛИС фирмы ALTERA: проектирование устройств обработки сигналов -М.: «Додека», 2000;
  4.  IEEE Standart 1149.1a –1993;
  5.  Курс лекции по дисциплине «Моделирование».  Лектор: Захаров А.П.;

PAGE   \* MERGEFORMAT 21


 

А также другие работы, которые могут Вас заинтересовать

5531. Женщина как объект дискриминации 384.5 KB
  Проблема насилия и женщин в современном Российском обществе на сегодняшний день весьма актуальна. Насилие в отношении женщин проявляется во всех сферах их жизнедеятельности, включая работу и семью. Одной из основных форм насилия является...
5532. Основные функции предприятия элеваторной промышленности 102.5 KB
  Основные функции предприятия элеваторной промышленности Уборка зерновых культур Уборка зерновых культур. Зерновые культуры убирают прямым комбинированием, раздельным комбайнированием и раздельным способом. Прямое комбайнирование заключается в том, ч...
5533. Невербальные средства коммуникации 69.5 KB
  Невербальные средства коммуникации. Понятие о средствах невербальной коммуникации и общая их характеристика. В нашем внешнем поведении проявляется то многое, что у нас происходит и есть внутри. Только эти проявления нужно уметь распознать. За отдель...
5534. Основи наукових досліджень та організація науково-дослідних та дослідно-конструкторських робіт 1.31 MB
  Ми живемо у вік науково-технічної революції, масового застосування інформатики, комп'ютерної та мікропроцесорної техніки. Кажуть, що провідні країни світу вступили в еру постпромислового розвитку, тобто в еру інформаційних технологій та і...
5535. Расчет и конструирование фундамента 560 KB
  Введение. Курсовой проект разработан в соответствии с заданием и представляет собой расчёт и конструирование фундамента.Проект состоит из пояснительной записки и графической части...
5536. Соотношение растрового и векторного методов обработки графической информации 89.5 KB
  Векторная модель данных Векторная модель данных представляет географические объекты подобно тому, как это делают карты. Точки изображают географические объекты, которые слишком малы, чтобы быть представленными как линия или область. Линии представля...
5537. Построение естественных характеристик двигателя постоянного тока независимого возбуждения 44.95 KB
  Построение естественных характеристик двигателя постоянного тока независимого возбуждения Цель работы: Экспериментальное определение момента инерции электропривода Схема установки, электрооборудование и приборы: Для выполнения работы используется дв...
5538. Расчет естественных характеристик двигателя постоянного тока независимого возбуждения 146.01 KB
  Расчет естественных характеристик двигателя постоянного тока независимого возбуждения Цель работы: Экспериментальное построение естественных механических и электромеханических характеристик двигателя постоянного тока (ДПТ) независимого возбуждения, ...