E1 Язык описания аппаратуры

Вы уже изучили основы цифровых схем и спроектировали простые процессоры в Logisim. Но вы, вероятно, уже поняли, что Logisim не подходит для проектирования более сложных схем. На самом деле современные процессоры проектируются с использованием языков описания аппаратуры (HDL). Далее вы узнаете, как проектировать цифровые схемы с помощью HDL.

Хотя Logisim не подходит для проектирования сложных схем, опыт, полученный при использовании Logisim, должен был помочь вам выработать «аппаратное мышление»: проектирование цифровых схем сводится всего к двум вещам — «инстанцированию» и «соединению». Когда в будущем вы будете использовать HDL для проектирования цифровых схем, вам следует мысленно связывать код HDL со своим опытом работы в Logisim: вы просто используете другой способ проектирования схем, но по сути по-прежнему занимаетесь «инстанцированием» и «соединением». Поэтому вы должны уметь представлять логическую структуру схемы по коду, который пишете. Если вы не можете её представить, велика вероятность, что в итоге у вас получится схема, которая работает плохо — с низкой рабочей частотой, большой площадью или высоким энергопотреблением, — а то и вовсе не работающая так, как задумано.

Дополнительные рекомендуемые материалы по цифровым схемам

Изучите язык Verilog с помощью онлайн-ресурсов

Мы рекомендуем сайт для изучения Verilog онлайн — HDLBitsоткрыть в новом окне, который предлагает множество упражнений и использует онлайн-симуляцию, чтобы определить, правильный ли у вас код.

Если вы уверены в своих навыках владения Verilog, попробуйте выполнить следующие упражнения:

  • Sequential Logic
  • Finite State Machines
    • Lemmings 1
    • Lemmings 2
    • Lemmings 3
    • Lemmings 4
    • PS/2 packet parser
    • PS/2 packet parser and datapath
    • Serial receiver
    • Serial receiver and datapath
    • Serial receiver with parity checking

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

  • Getting Started — рекомендуется выполнить, чтобы ознакомиться с процессом работы с упражнениями
  • Verilog Language — рекомендуется тем, кто ещё не знаком с Verilog
  • Combinational Logic
    • Basic Gates
      • More logic gates
      • Truth tables
      • Simple circuit A
      • Simple circuit B
      • Thermostat
      • 3-bit population count
      • Even longer vectors
    • Multiplexers
      • 2-to-1 multiplexer
      • 9-to-1 multiplexer
      • 256-to-1 4-bits multiplexer
    • Arithmetic Circuits
      • Signed addition overflow
      • 100-bits binary adder
  • Sequential Logic
    • Latches and Flip-Flops
      • D flip-flip
      • DFF with reset value
      • DFF with asynchronous reset
      • DFF with byte enable
      • Mux and DFF
      • Create circuit from truth table
      • Detect an edge
      • Detect both edges
      • Edge capture register
      • Dual-edge triggered flip-flop
    • Counters
      • Decade counter again
      • Slow decade counter
      • Counter 1000
      • 12-hour clock
    • Shift Registers
      • Left/right rotator
      • Left/right arithmetic shift by 1 or 8
      • 5-bits LFSR
      • Shift register
      • 3-input LUT
    • More Circuits — выполнить все
    • Finite State Machines — выполнить все

Связь между Verilog и схемами

Попробуйте сгенерировать код Verilog, соответствующий схеме в Logisim, а затем прочитайте код, чтобы понять, как код Verilog соотносится с соответствующей схемой в Logisim.