Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
register_counters.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
993.79 Кб
Скачать

1.Регистры

Регистр – набор двух или большего числа триггеров с общим входом тактового сигнала.

Предназначен для хранения слова информации.

Регистры строятся в основном на основе D-триггеров.

Примеры регистров (средние интегральные схемы)

1. Микросхема 74x 175 – четырехразрядный регистр на базе D-триггеров, управляемых фронтом синхросигнала, с асинхронным инверсным сбросом.

Условное графическое обозначение регистра приведено на рис.1

Рис. 1

Таблица истинности микросхемы (Таб.1)

Таб.1

Reset

CLK

D0 D1 D2 D3

Q0 Q1 Q2 Q3

Режим

0

x

x x x x

0 0 0 0

Сброс

1

D0 D1 D2 D3

D0 D1 D2 D3

Запись

1

0

x x x x

Q0lastQ1lastQ2lastQ3last

Хранение

1

1

x x x x

Q0lastQ1lastQ2lastQ3last

Хранение

Схема регистра приведена на рис.2

C

D3

C

C

C

D

D

D

D

Q3

Q2

D2

Q1

Q0

D0

D1

CLK

CLK

CLK

CLK

Reset

CLK

Описание работы регистра на Verilog

module register(clk, data, reset, q);

input clk, reset;

input [3:0] data;

output [3:0] q;

reg [3:0] q;

always @(posedge clk or negedge reset)

if (!reset)

q<= 0;

else q<=data;

endmodule

2. Микросхема 74x 374 – восьмиразрядный регистр на базе D-триггеров, управляемых фронтом синхросигнала. Имеет инверсный вход “Output Enable” – OE. Низкий уровень сигнала на этом входе переводит выходы триггеров в высокоимпедансное состояние.

Рис.2

Таблица истинности микросхемы (Таб.2)

Таб.2

ОЕ

CLK

D0 ... D7

Q0 ... Q7

1

x

x x x x

z ... z

0

D0 . . . D7

D0 ... D7

0

0

x x x x

Q0last...Q7last

1

1

x x x x

Q0last....Ql7ast

Рис.3 3. Микросхема 74x 377 – восьмиразрядный регистр на базе D-триггеров, управляемых фронтом синхросигнала с инверсным входом разрешения синхронизации EN. Рис.4

Описание работы регистра на Verilog

module register(clk, data, en, q);

input clk, reset;

input [3:0] data;

output [3:0] q;

reg [3:0] q;

always @(posedge clk )

if (!en)

q<= data;

else q<=q;

endmodule

4. Микросхема 74x373 – восьмиразрядный регистр (8 защелок) с инверсным входом разрешения выхода

Рис. 5 Verilog описание регистра

module Latch_8 (clk, oe, data,q);

input clk, oe;

input [0:7] data;

output [0:7] q;

reg [0:7] q;

reg [0:7] i_q; //internal signal vector

always @(clk or data)

if(clk==1) i_q<=data;

else i_q<=i_q;

assign q = (oe==0)? i_q : 8’bz;

endmodule

Рис. 6

5.Описание на Verilog 16-разрядного регистра с инверсным входом асинхронного сброса, с инверсным входом разрешения выхода (output enable) и входом разрешения синхронизации clk_en.

module reg_16(clk, clk_en, oe, reset, data,q);

input clk, clk_en, oe, reset;

input [0:15] data;

output [0:15] q;

reg [0:15] q;

reg [0:15] inter_q;

always @(posedge clk or negedge reset)

if (reset==0) inter_q<=16’b0;

else if (clk_en==1) inter_q<=data;

else inter_q<=inter_q;

assign q = (oe==0)? inter_q : 16’bz;

endmodule

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]