E1 Язык описания аппаратуры
Вы уже изучили основы цифровых схем и спроектировали простые процессоры в Logisim. Но вы, вероятно, уже поняли, что Logisim не подходит для проектирования более сложных схем. На самом деле современные процессоры проектируются с использованием языков описания аппаратуры (HDL). Далее вы узнаете, как проектировать цифровые схемы с помощью HDL.
Хотя Logisim не подходит для проектирования сложных схем, опыт, полученный при использовании Logisim, должен был помочь вам выработать «аппаратное мышление»: проектирование цифровых схем сводится всего к двум вещам — «инстанцированию» и «соединению». Когда в будущем вы будете использовать HDL для проектирования цифровых схем, вам следует мысленно связывать код HDL со своим опытом работы в Logisim: вы просто используете другой способ проектирования схем, но по сути по-прежнему занимаетесь «инстанцированием» и «соединением». Поэтому вы должны уметь представлять логическую структуру схемы по коду, который пишете. Если вы не можете её представить, велика вероятность, что в итоге у вас получится схема, которая работает плохо — с низкой рабочей частотой, большой площадью или высоким энергопотреблением, — а то и вовсе не работающая так, как задумано.
Дополнительные рекомендуемые материалы по цифровым схемам
- Digital Design and Computer Architecture: если вам нужно изучить некоторые теоретические основы цифровых схем в процессе обучения, можете обратиться к главам 1–5 этой книги.
- Вводное видео по Verilog
- Обзор синтаксиса Verilog
- Advanced Digital System Design Techniques and Case Studies in Verilog
- Платформа USTC Verilog OJ(требуется регистрация и вход)
Изучите язык 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
- Basic Gates
- 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 — выполнить все
- Latches and Flip-Flops
Связь между Verilog и схемами
Попробуйте сгенерировать код Verilog, соответствующий схеме в Logisim, а затем прочитайте код, чтобы понять, как код Verilog соотносится с соответствующей схемой в Logisim.
