SlideShare a Scribd company logo
1 of 24
Download to read offline
Đồ án chuyên ngành
ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG
KHOA ĐIỆN TỬ-VIỄN THÔNG
BÁO CÁO ĐỒ ÁN CHUYÊN NGHÀNH
ĐỀ TÀI:
THIẾT KẾ BỘ TRUYỀN NHẬN UART 8 BIT NẠP TRÊN KIT FPGA
Sinh viên thực hiện : Đỗ Tiến Thành
Lớp : 09DT2
Giáo viên hướng dẫn: ThS. Võ Tuấn Minh
Đà Nẵng, 2014
LỜI CAM ĐOAN
Tôi xin cam đoan nội dung của đồ án này không phải là bản sao chép của bất cứ
đồ án nào đã có từ trước. Nếu vi phạm tôi xin chịu mọi hình thức kỷ luật của Khoa.
Sinh viên thực hiện
Đỗ Tiến Thành
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
.............................................................................................................................................
.............................................................................................................................................
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 1
Đồ án chuyên ngành
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
Đà Nẵng, ngày tháng 1 năm 2014
GIÁO VIÊN HƯỚNG DẪN
(Ký tên)
LỜI MỞ ĐẦU
Ngày nay, trong các hệ thống truyền dữ liệu có hai cách đưa tín hiệu lên đường
truyền: nối tiếp và song song. Cách truyền song song thường được truyền trên một
khoảng cách ngắn, ví dụ giữa các thiết bị trong cùng một phòng như từ máy tính sang
máy in. Cách truyền nối tiếp thường được thực hiện khi khoảng cách truyền khá xa.
Ngoài ra, trong cách truyền nối tiếp, dựa vào cách thực hiện sự đồng bộ giữa nơi
phát và thu ta có hai chế độ hoạt động: đồng bộvà bất đồng bộ. Trong chế độ bất đồng
bộ, xung đồng hồ được tạo ra một cách riêng rẻ ở máy phát và máy thu dựavào tần số
danh định tương ứng với vận tốc truyền (bit rate hoặc baud rate). Trong chế độ đồng
bộ, nơi phát có thể gửi xung đồng hồ tới nơi thu theo một kênh truyền song song với
kênh truyền dữ liệu hoặc nơi thu tự tạo ra xung đồng hồ bằng cách tách tín hiệu thời
gian từ dòng dữ liệu.
Trong đồ án này, tôi xin được trình bày về chuẩn truyền thông nối tiếp không
đồng bộ UART (Universal Asynchronous Receiver Transmitter). Vì truyền thông nối
tiếp có các ưu điểm sau:
- Khoảng cách truyền xa hơn truyền song song.
- Sốdây kết nối ít.
- Có thể truyền không dây dùng hồng ngoại.
- Có thể ghép nối với vi điều khiển hay PLC (Programmable Logic Device).
- Cho phép nối mạng.
- Có thể tháo lắp trong lúc máy tính đang làm việc.
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 2
Đồ án chuyên ngành
MỤC LỤC
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 3
Đồ án chuyên ngành
Chương 1 MÔ TẢ TỔNG QUAN VỀ GIAO TIẾP UART
Truyền nối tiếp (serial transmission) các thông tin số hay bit thông qua một dây
đơn (single wire) hay một vật liệu trung gian nào đó thì tiết kiệm chi phí hơn nhiều so
với truyền song song dùng nhiều dây cùng một lúc. Truyền dữ liệu dùng UART có thể
thực hiện theo phương thức song công (full duplex) tức là việc gửi và nhận thực hiện
cùng một lúc, hay bán song công (half duplex), tức là các thiết bị thay phiên nhau phát
và nhận.
Bộ truyền UART phát từng bit trong byte dữ liệu một cách tuần tự. Bộ thu
UART chịu trách nhiệm lắp ghép các bit này lại thành các byte hoàn chỉnh. Mỗi UART
gồm có hai thanh ghi dịch, được dùng làm thành phần cơ bản trong việc chuyển giữa
nối tiếp sang song song và ngược lại.
1.1 Đặc trưng khung truyền
Hình 1.1 Định dạng khung truyền cơ bản
Mỗi ký tự được gửi sau một bit khởi tạo gọi là start bit ở mức logic thấp, số các
bit dữ liệu thường là 7 hay 8 đôi khi là 5, cũng có thể có thêm bit kiểm tra chẵn lẻ
(parity bit) và một hay nhiều stop bit ở mức logic cao. Start bit sẽ báo hiệu cho bộ thu
một ký tự mới đang được gửi đi (hay nói đúng hơn là đang đến). Tiếp theo sau start bit,
bộ thu sẽ nhận từ 5 đến 8 bit dữ liệu, phụ thuộc vào tùy vào cấu hình sử dụng. Theo sau
bit dữ liệu có thể là một bit kiểm tra chẵn lẻ và cuối cùng phải có ít nhất một stop bit ở
mức cao báo hiệu quá trình truyền một ký tự đã kết thúc. Bộ thu sẽ tiến hành xử lý các
bit đã nhận và chờ start bit để nhận byte dữ liệu tiếp theo. Bởi vì start bit luôn là mức
logic 0 trong khi stop bit ở mức logic 1 do đó không gây ra hiểu lầm giữa hai bit liên
tiếp được truyền.
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 4
Đồ án chuyên ngành
1.1.1 Bộ nhận dữ liệu
Hình 1.2 Bộ nhận dữ liệu
Tất cả các hoạt động của phần cứng UART đều được đồng bộ hay điều khiển
bởi một tín hiệu xung đồng hồ (clock) chạy với tốc độ bằng một số nhân nguyên nào
đó của tốc độ dữ liệu, ví dụ việc truyền hay nhận một bit dữ liệu sẽ kéo dài trong vòng
16 xung clock chẳng hạn. Bộ thu sẽ kiểm tra trạng thái của tín hiệu được gửi đến tại
mỗi xung đồng hồ (theo cạnh lên hay cạnh xuống) để xem khi nào xảy ra start bit. Nếu
thời gian của một start bit kéo dài ít nhất là một nửa thời gian của một bit dữ liệu, thì
nó được xem là hợp lệ và báo hiệu việc truyền một ký tự mới đang xảy ra.
Nếu Start bit không đáp ứng yêu cầu, xung này xem như là xung sai (spurious
pulse) và bị bỏ qua. Thời gian truyền một bit được giám sát và trạng thái của đường
truyền được lấy mẫu tại điểm giữa mỗi bit. Đồng thời tạo ra xung clock (cạnh lên hay
xuống) cho phép dịch dữ liệu vào thanh ghi dịch (shift register). Sau khi kết thúc một
khung dữ liệu, nội dung của thanh ghi dịch đã được chuẩn bị sẵn sàng ở dạng song
song để gửi tới bộ xử lý dữ liệu trong hệ thống. UART lúc này sẽ đặt một cờ (flag) để
báo hiệu dữ liệu mới nhận đã sẵn sàng, hoặc nó cũng có thể tạo ra một ngắt (interrupt)
để yêu cầu bộ xử lý nhận dữ liệu vừa nhận được.
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 5
Đồ án chuyên ngành
Trong một vài kiểu UART, một bộ nhớ đệm nhỏ kiểu FIFO (First In First Out)
được đặt giữa thanh ghi dịch của bộ thu và bộ xử lý, việc làm này cho phép bộ xử lý có
nhiều thời gian hơn để thao tác trên dữ liệu nhằm hạn chế việc mất dữ liệu trong trường
hợp tốc độ xử lý của bộ xử lý chậm hơn quá trình nhận dữ liệu.
1.1.2 Bộ phát dữ liệu
Hình 1.3 Bộ phát dữ liệu
Một bộ nhớ đệm nhỏ kiểu FIFO (First In First Out) được đặt giữa thanh ghi dịch
của bộ phát và bộ xử lý giống như bên bộ nhận dữ liệu.
Ngay sau khi dữ liệu được gửi vào thanh ghi dịch thì phần cứng UART sẽ tạo ra
start bit, và dịch số bit dữ liệu yêu cầu ra ngoài đường truyền, tạo ra và ghép bit kiểm
tra chẵn lẻ vào cuối byte dữ liệu truyền nếu có, đồng thời chèn luôn cả stop bit.
Bởi việc truyền một khung dữ liệu có thể tương đối lâu so với tốc độ của bộ xử
lý, nên UART sẽ duy trì một cờ báo hiệu trạng thái bận để hệ thống không ghi byte dữ
liệu mới vào cho đến khi dữ liệu tại đã được truyền xong, việc báo hiệu này có thể thực
hiện thông qua một ngắt.
1.1.3 Tốc độ Baud
Baud rate là đại lượng xác định tốc độ phát bit dữ liệu trong truyền bất đồng bộ,
đơn vị là bps (bit per second).
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 6
Đồ án chuyên ngành
Bình thường, baud rate dùng để đo số bit thực sự được gửi trên kênh truyền chứ
không phải là lượng dữ liệu thực sự được gửi từ máy này sang máy khác.Việc tính
baud rate còn gồm cả những start bit, stop bit hay bit kiểm tra chẵn lẻ được tạo ra bởi
UART gửi nhưng bị loại bỏ bởi UART thu. Điều này có nghĩa rằng những từ dữ liệu có
độ dài 7 bit phải cần đến ít nhất 9 bit hoặc 10 bit (nếu có bit kiểm tra chẵn lẻ) để truyền
. Do đó, một modem có khả năng phát 300 bit trên giây từ nơi này sang nơi khác thì có
thể truyền 30 khung dữ liệu 7 bit nếu có dùng bit kiểm tra chẵn lẻ, 1 stop bit và 1 start
bit. Như vậy, số bit dữ liệu thực sự trong một giây của modem là 210 bit, số bit được
chèn thêm là 90 bit.
Chương 2 PHÂN TÍCH TỔNG QUAN VÀ THIẾT KẾ CÁC KHỐI
CHỨC NĂNG CỦA BỘ UART
Thiết kế một bộ truyền bất đồng bộ theo chuẩn UART thử nghiệm trên KIT FPGA. Cụ
thể, thiết kế bộ truyền nối tiếp theo chuẩn UART (Universal Asynchronous Receiver
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 7
Đồ án chuyên ngành
Transmitter) có các đặc điểm như sau: Cấu hình được tốc độ BAUD (tốc độ truyền dữ
liệu) theo công thức :
Trong đó: fbaud là tốc độ BAUD cần cấu hình, BRG là thanh ghi thiết lập tốc
độ baud có độ rộng 8 bit, fosc là tần số xung clock trong mạch.
Khung dữ liệu gồm: 1 start bit, 8 bit dữ liệu, 1 stop bit 8 bit dữ liệu cần truyền
có giá trị từ H00 đến HFF sẽ được chuyển đổi dạng mã ASCII trước khi truyền đi. Ví
dụ: Dữ liệu cần truyền là: H85 sẽ được đổi thành H38 (là mã ASCII của số 8) và
H35(là mã ASCII của số 5). Sau đó hai giá trị H38 và H35 sẽ được truyền đi qua
đường truyền nối tiếp.
2.1 Những yêu cầu của thiết kế :
- Tốc độ baud được chọn cố định trước khi tổng hợp thông qua biến BRG.
- Khung dữ liệu gồm 1 bit start, 8 bit dữ liệu, 1 bit stop.
- Truyền nhận song công (Dữ liệu được truyền đồng thời theo 2 hướng).
Hình 2.1 Truyền nhận song công
 Sơ đồ khối tổng quát: Thiết kế có 4 khối cơ bản như sau
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 8
Đồ án chuyên ngành
Lõi UART-FPGA gồm các khối chính như sau:
Khối truyền nối tiếp (TRANSMITTER): Nhận dữ liệu từ ngõ vào data_in và
phát đi dựa trên tốc độ baud đã được tính trong khối BAUD RATE.
Khối nhận dữ liệu nối tiếp (RECEIVER): Phát hiện, lấy mẫu và lưu trữ dữ liệu
nhận nối tiếp từ chân RX của UART ngoài thông qua tín hiệu uart_rx với tốc độ baud
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 9
Đồ án chuyên ngành
đã được tính ở khối BAUD RATE. Khối này có thêm bộ đệm FIFO 8 tầng để lưu tạm
dữ liệu và tránh mất mát dữ liệu.
Khối tạo tốc độ truyền (BAUD RATE): Dựa vào thông số tốc độ truyền được
cấu hình, khối này sẽ tính toán và tạo xung nhịp truyền dữ liệu khi phát và lấy mẫu dữ
liệu khi nhận.
Khối điều khiển và hiển thị (CONTROL DISPLAY): tiếp nhận tín hiệu điều
khiển tx_in để tạo ra tín hiệu cho phép khối truyền dữ liệu của UART hoạt động. Đồng
thời nhận các giá trị dữ liệu từ khối nhận dữ liệu của UART để giải mã LED 7 đoạn và
hiển thị kết quả.
Bốn khối trên sẽ được kết nối với nhau thành một thiết kế hoàn chỉnh ở file
core_uart.
2.2 Sơ đồ tín hiệu vào ra và sơ đồ chi tiết các khối thiết kế
2.2.1 Khối TRANSMITTER
*Sơ đồ tín hiệu giao tiếp
*Chức năng các tín hiệu:
Tên tín hiệu Chiều Mô tả
clk input Clock đồng bộ.
reset_n input Reset đồng bộ,tích cực mức thấp.
uart_en input Cho phép hoạt động,tích cực mức cao.
tx_enable input Cho phép bắt đầu truyền dữ liệu.
data_in[7:0] input Bus dữ liệu truyền.
brg_tx_clken input Tín hiệu xác định vị trí dịch dữ liệu
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 10
Đồ án chuyên ngành
khi bộ truyền hoạt động.
uart_tx output Ngõ ra nối tiếp của dữ liệu truyền ,gán
ra cổng RS232.
*Máy trạng thái của bộ truyền dữ liệu:
*Mô tả các trạng thái :
Trạng thái hiện
tại
Mô tả Điều kiện Trạng thái kế
tiếp
IDLE
Trạng thái rảnh
khi bộ truyền
không hoạt động.
tx_enable LOAD_TXS
LOAD_TXS
Trạng thái nạp dữ
liệu vào thanh ghi
dịch.
SHIFT_DATA
Trạng thái truyền brg_tx_clken &
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 11
Đồ án chuyên ngành
SHIFT_DATA từng bit dữ liệu. tx_count =
“1001”
IDLE
*Sơ đồ chi tiết khối TRANSMITTER:
Bộ cộng để tăng giá trị bộ đếm lên, bộ MUX để chọn các ngõ vào khác nhau
phụ thuộc vào giá trị của 2 tín hiệu set_tx_count và shift_en như hình vẽ, Flip Flop là
DFF để tạo thanh ghi lưu giá trị đếm. Bộ so sánh bằng để quyết định giá trị của tín hiệu
set_tx_count.
Bộ đếm để tạo tín hiệu tx_count[3:0], cứ khi nào dịch được 1 bit trong thanh ghi
tsr[9:0] thì giá trị bộ đếm tăng lên 1 .Khi tx_count = “1001” thì dữ liệu đã được truyền
xong.
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 12
Đồ án chuyên ngành
Khối gồm các cổng logic: cổng AND4 để tạo tín hiệu shift_en cho phép dịch,
các bộ so sánh để tạo các tín hiệu tương ứng, bộ MUX để chọn các tín hiệu ngõ vào
dựa vào 2 tín hiệu shift_en và load_data, các DFF để tạo các thanh ghi tsr[9:0] vào tín
hiệu uart_tx.
Khối tạo thanh ghi dịch tsr 10 bit {gồm 1 bit start, 8 bit data_in, 1 bit stop) , khi
có xung brg_tx_clken và đủ các điều kiện như mô tả ở máy trạng thái thì dữ liệu trong
thanh ghi sẽ được dịch đến ngõ ra nối tiếp uart_tx của tín hiệu truyền cho tới khi truyền
hết 8 bit data_in.
2.2.2 Khối RECEIVER
*sơ đồ tín hiệu giao tiếp
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 13
Đồ án chuyên ngành
*Chức năng các tín hiệu:
Tên tín hiệu Chiều Mô tả
clk input Clock đồng bộ.
reset_n input Reset đồng bộ,tích cực mức thấp.
uart_en input Cho phép hoạt động,tích cực mức
cao.
brg_rx_clken input Xung cho phép xác định vị trí lấy
mẫu dữ liệu.
uart_rx input Đường nhận dữ liệu truyền nối
tiếp ,gán ra cổng RS232.
fifo_rd input Cho phép đọc dữ liệu từ FIFO ra.
rc_data[7:0] output Dữ liệu nhận được của khối
RECEIVER.
fifo_full output Cờ báo FIFO đầy,không ghi được
dữ liệu vào FIFO nữa.
fifo_empty output Cờ báo FIFO trống,có thể ghi được
dữ liệu vào FIFO.
*Máy trạng thái của bộ nhận dữ liệu:
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 14
Đồ án chuyên ngành
*Mô tả các trạng thái :
Trạng thái hiện tại Mô tả Điều kiện Trạng thái kế tiếp
IDLE
Trạng thái rảnh
khi bộ nhận
không hoạt
động.
tx_en CHECK_START_BIT
CHECK_START_BIT
Trạng thái lấy
mẫu và kiểm tra
bit start.
samp_count =“0111”
& uart_rx_sync=”1”
IDLE
samp_count =“0111”
& uart_rx_sync=”0”
RECEIVE_DATA
RECEIVE_DATA
Trạng thái lấy
mẫu các bit trên
đường nhận dữ
liệu nối tiếp.
rx_count = “1010” IDLE
*Sơ đồ chi tiết khối RECEIVER:
Mạch đếm xung lấy mẫu:
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 15
Đồ án chuyên ngành
Mạch gồm các bộ so sánh bằng để tạo các tín hiệu tương ứng trên hình vẽ, các
cổng OR2, AND2 để tạo tín hiệu inc_samp_count, bộ MUX để chọn các ngõ vào dựa
vào 2 tín hiệu inc_samp_count và clr_samp_count, thanh ghi DFF để tạo tín hiệu
samp_count[3:0].
Giá trị bộ đếm samp_count[3:0] sẽ tăng lên 1 khi các điều kiện của bộ MUX
được thỏa mãn.
Mạch đếm số bit nhận được:
Mạch gồm các bộ so sánh bằng để tạo các tín hiệu tương ứng trên hình vẽ, cỏng
AND3 để tạo tín hiệu inc_rx_count, bộ MUX để chọn các ngõ vào dựa vào 2 tín hiệu
inc_rx_count và set_comp, thanh ghi DFF để tạo tín hiệu rx_bitcount[3:0].
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 16
Đồ án chuyên ngành
Khi nhận được 1 bit thì rx_bitcount[3:0] sẽ tăng lên 1. Khi đã nhận đủ 10 bit của
thanh ghi dịch tsr[9:0] thì bộ đếm sẽ được reset nhờ tín hiệu clr_rx_count.
Mạch tạo thanh ghi dịch bên bộ nhận:
Mạch gồm bộ MUX để chọn các ngõ vào dựa vào tín hiệu inc_rx_count, thanh
ghi DFF để tạo tín hiệu rsr[7:0]
Tạo thanh ghi dịch 8 bit rsr[7:0] để nhận 8 bit data_in từ thanh ghi dịch tsr[9:0]
bên khối truyền.Khi có tín hiệu cho phép dịch inc_rx_count thì dữ liệu trong thanh ghi
sẽ được dịch qua phải 1 bit để đưa vào FIFO nhận.
Mạch bắt cạnh tín hiệu cho phép FIFO nhận:
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 17
Đồ án chuyên ngành
Việc nhấn và giữ một nút (KEY) sẽ tạo ra mức logic 1 kéo dài trong nhiều xung
clock hê thống.
Nếu ta đưa trực tiếp tín hiệu fifo_rd vào để xét điều kiện đọc FIFO thì sẽ
không chính xác và không kiểm soát được số lần đọc. Để một lần nhấn nút
tương ứng với một byte dữ liệu được đọc đi thì ta phải tạo ra tín hiệu cho phép
chỉ tích cực trong đúng một chu kỳ của xung clock hệ thống. Mạch trên đây sẽ
thực hiện điều đó.
Dạng sóng mô phỏng :
Sau 2 chu kì của tín hiệu fifo_rd thì phát hiện được cạnh của fifo_rd_enable.
FIFO 8 tầng nhận dữ liệu:
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 18
Đồ án chuyên ngành
Khi FIFO chưa Full,dữ liệu từ thanh ghi rsr[7:0] sẽ được ghi vào FIFO nhờ con
trỏ cho phép ghi wptr[3:0] và tín hiệu fifo_we.
Dữ liệu đọc ra thanh ghi rc_data[7:0] chính là dữ liệu nhận được để hiển thị trên
LED 7 đoạn. Con trỏ cho phép đọc rptr[3:0] sẽ cho phép đọc dữ liệu ra từ FIFO.
Mạch tạo ra con trỏ dữ liệu wptr[3:0] và rptr[3:0] :
Khi có tín hiệu fifo_we =1 thì bộ đếm sẽ hoạt động và con trỏ wptr[3:0] sẽ tăng
lên 1.Khi có tín hiệu fifo_re =1 thì bộ đếm sẽ hoạt động và con trỏ rptr[3:0] sẽ tăng lên
1.
Mạch tạo các cờ báo trạng thái của FIFO:
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 19
Đồ án chuyên ngành
Mạch gồm các cổng XOR2, AND2, bộ so sánh bằng để tạo các tín hiệu tương
ứng như hình vẽ.
Khi con trỏ wptr[2:0] = rptr[2:0] và bit có trọng số cao nhất wptr[3] khác rptr[3]
thì tín hiệu fifo_full = 1 ,cờ này báo hiệu FIFO đầy, không thể ghi thêm dữ liệu vào
FIFO.
Khi con trỏ wptr[2:0] = rptr[2:0] và bit có trọng số cao nhất wptr[3] giống
rptr[3] thì tín hiệu fifo_empty = 1 ,cờ này báo hiệu FIFO chưa đầy, có thể ghi thêm dữ
liệu vào FIFO.
2.2.3 Khối BAUD RATE
*Sơ đồ tín hiệu giao tiếp
*Chức năng các tín hiệu:
Tên tín hiệu Chiều Mô tả
clk input Clock đồng bộ.
reset_n input Reset đồng bộ .Tích cực
mức thấp.
uart_en input Cho phép hoạt động.Tích
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 20
Đồ án chuyên ngành
cực mức cao.
brg_tx_clken output Xung cho phép dịch từng
bit dữ liệu khi bộ truyền
hoạt động.
brg_rx_clken output Xung cho phép xác định
vị trí lấy mẫu dữ liệu.
Mô tả xung truyền và xung nhận :
Tốc độ baud được chọn gán trước khi tổng hợp thông qua biến BRG theo công
thức sau:
fbaud tính theo đơn vị bps, fosc là tần số xung clock .
Xung Tx cho phép bắt đầu truyền 1 bit dữ liệu(Data) bên phát, ở bên thu khi
nhận được 1 bit dữ liệu thì cũng có 1 xung Rx được lấy mẫu ở giữa bit dữ liệu .
Khoảng thời gian lấy mẫu của Tx và Rx là 16x(n+1) xung CLOCK, với n là
tham số nạp vào để cấu hình cho tốc độ Baud.
*Sơ đồ chi tiết khối BAUD RATE:
Mạch tạo xung truyền :
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 21
Đồ án chuyên ngành
Mạch gồm bộ cộng để tăng giá trị đếm lên 1, cổng AND2, các bộ MUX để chọn
các giá trị ngõ vào khác nhau, bộ so sánh bằng, thanh ghi DFF để tạo tín hiệu
tx_count[15:0].
Khi có tín hiệu uart_en = 1, thì BRG sẽ được nạp vào ,bộ đếm sẽ bắt đầu đếm từ
0 cho tới khi tx_counter[15:0] = {16x(BRG + 1) -1} thì brg_tx_clken = 1.
Mạch tạo xung nhận :
Mạch gồm bộ cộng để tăng giá trị đếm lên 1, cổng AND2, các bộ MUX để chọn
các giá trị ngõ vào khác nhau, bộ so sánh bằng, thanh ghi DFF để tạo tín hiệu
rx_count[11:0].
Khi có tín hiệu uart_en = 1, thì BRG sẽ được nạp vào ,bộ đếm sẽ bắt đầu đếm từ
0 cho tới khi rx_counter[11:0] = BRG thì brg_rx_clken = 1.
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 22
Tải bản FULL (file word 47 trang): bit.ly/2Ywib4t
Dự phòng: fb.com/KhoTaiLieuAZ
Đồ án chuyên ngành
2.2.4 Khối CONTROL DISPLAY
*Sơ đồ tín hiệu giao tiếp
*Chức năng các tín hiệu:
Tên tín hiệu Chiều Mô tả
clk input Clock đồng bộ .
reset_n input Reset đồng bộ .Tích cực mức thấp.
uart_en input Cho phép hoạt động.Tích cực mức cao.
tx_in input Cho phép ghi dữ liệu từ bus data_in vào
bộ truyền.
rc_data[7:0] input Giá trị dữ liệu nhận được từ khối
RECEIVER.
tx_enable output Tín hiệu cho phép bộ truyền bắt đầu
hoạt động.
hex0[6:0] output Giá trị giải mã LED 7 đoạn của 4 bit
thấp trong Byte dữ liệu nhận được.
hex1[6:0] output Giá trị giải mã LED 7 đoạn của 4 bit cao
trong Byte dữ liệu nhận được.
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 23
Tải bản FULL (file word 47 trang): bit.ly/2Ywib4t
Dự phòng: fb.com/KhoTaiLieuAZ
Đồ án chuyên ngành
uart_tx output Đường truyền dữ liệu nối tiếp bất đồng
bộ gán ra cổng RS232.
*Sơ đồ chi tiết khối CONTROL DISPLAY
Mạch giải mã LED 7 đoạn cho dữ liệu nhận hiện tại:
Chức năng: giải mã 4 bit của rc_data thành 7 bit để hiện thị trên LED 7 đoạn
Mạch tạo tín hiệu cho phép truyền :
SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 24
3843102

More Related Content

What's hot

Phần bai tap mau anten & truyen song (mang tinh chat tham khao)
Phần bai tap mau anten & truyen song (mang tinh chat tham khao)Phần bai tap mau anten & truyen song (mang tinh chat tham khao)
Phần bai tap mau anten & truyen song (mang tinh chat tham khao)
tiểu minh
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tin
akprovip
 
mo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.doc
mo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.docmo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.doc
mo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.doc
NgcBi88
 

What's hot (20)

xử lý số tín hiệu -Chuong 5
xử lý số tín hiệu -Chuong 5xử lý số tín hiệu -Chuong 5
xử lý số tín hiệu -Chuong 5
 
Cac ky thuat_dieu_che_4543
Cac ky thuat_dieu_che_4543Cac ky thuat_dieu_che_4543
Cac ky thuat_dieu_che_4543
 
Do thi-smith-chart
Do thi-smith-chartDo thi-smith-chart
Do thi-smith-chart
 
Đại số boolean và mạch logic
Đại số boolean và mạch logicĐại số boolean và mạch logic
Đại số boolean và mạch logic
 
Tichchap
TichchapTichchap
Tichchap
 
Bài tập lớn
Bài tập lớnBài tập lớn
Bài tập lớn
 
LUẬN VĂN THIẾT KẾ HỆ THỐNG NHÚNG VỚI VI ĐIỀU KHIỂN LÕI MỀM VÀ HỆ ĐIỀU HÀNH TR...
LUẬN VĂN THIẾT KẾ HỆ THỐNG NHÚNG VỚI VI ĐIỀU KHIỂN LÕI MỀM VÀ HỆ ĐIỀU HÀNH TR...LUẬN VĂN THIẾT KẾ HỆ THỐNG NHÚNG VỚI VI ĐIỀU KHIỂN LÕI MỀM VÀ HỆ ĐIỀU HÀNH TR...
LUẬN VĂN THIẾT KẾ HỆ THỐNG NHÚNG VỚI VI ĐIỀU KHIỂN LÕI MỀM VÀ HỆ ĐIỀU HÀNH TR...
 
Cac lenh trong matlab
Cac lenh trong matlabCac lenh trong matlab
Cac lenh trong matlab
 
xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2
 
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_2 matlab ly-thuyet_laptrinh_hamtoanhoc_
2 matlab ly-thuyet_laptrinh_hamtoanhoc_
 
Phần bai tap mau anten & truyen song (mang tinh chat tham khao)
Phần bai tap mau anten & truyen song (mang tinh chat tham khao)Phần bai tap mau anten & truyen song (mang tinh chat tham khao)
Phần bai tap mau anten & truyen song (mang tinh chat tham khao)
 
Ptit mô phỏng hệ thống truyền thông slide
Ptit mô phỏng hệ thống truyền thông slidePtit mô phỏng hệ thống truyền thông slide
Ptit mô phỏng hệ thống truyền thông slide
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tin
 
Đồ Thị Matlab
Đồ Thị Matlab Đồ Thị Matlab
Đồ Thị Matlab
 
Chuong 05 flip flop
Chuong 05 flip flopChuong 05 flip flop
Chuong 05 flip flop
 
Truyen song-va-anten
Truyen song-va-antenTruyen song-va-anten
Truyen song-va-anten
 
Bài tập lớn môn thông tin quang WDM_08293012092019
Bài tập lớn môn thông tin quang WDM_08293012092019Bài tập lớn môn thông tin quang WDM_08293012092019
Bài tập lớn môn thông tin quang WDM_08293012092019
 
Chương 5: Khối thu phát
Chương 5: Khối thu phátChương 5: Khối thu phát
Chương 5: Khối thu phát
 
Slide he dieu hanh
Slide he dieu hanhSlide he dieu hanh
Slide he dieu hanh
 
mo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.doc
mo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.docmo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.doc
mo-phong-dieu-che-khoa-dich-pha-qpsk-4psk-bang-matlab.doc
 

Similar to Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA

Mitsubishi
MitsubishiMitsubishi
Mitsubishi
ddungd4
 
Bao cao do an dieu khien dong co dc
Bao cao do an dieu khien dong co dcBao cao do an dieu khien dong co dc
Bao cao do an dieu khien dong co dc
namnam2005nt
 
Chuyen mach Cisco Switch
Chuyen mach Cisco SwitchChuyen mach Cisco Switch
Chuyen mach Cisco Switch
Sinh Khong
 
Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2
Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2
Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2
Huy Đậu Ngọc
 

Similar to Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA (20)

Chuong2
Chuong2Chuong2
Chuong2
 
Tailieu.vncty.com dong-ho-thoi-gian-thuc-ds1307-pic16 f87
Tailieu.vncty.com   dong-ho-thoi-gian-thuc-ds1307-pic16 f87Tailieu.vncty.com   dong-ho-thoi-gian-thuc-ds1307-pic16 f87
Tailieu.vncty.com dong-ho-thoi-gian-thuc-ds1307-pic16 f87
 
Chuong5 hoạt động port nối tiếp
Chuong5 hoạt động port nối tiếpChuong5 hoạt động port nối tiếp
Chuong5 hoạt động port nối tiếp
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
 
Mitsubishi
MitsubishiMitsubishi
Mitsubishi
 
PLC mitsubishi
PLC mitsubishiPLC mitsubishi
PLC mitsubishi
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 7 truyền thông điểm điểm
Lập trình PLC S7 1200 tiếng Việt-Chuong 7 truyền thông điểm điểmLập trình PLC S7 1200 tiếng Việt-Chuong 7 truyền thông điểm điểm
Lập trình PLC S7 1200 tiếng Việt-Chuong 7 truyền thông điểm điểm
 
Bao cao do an dieu khien dong co dc
Bao cao do an dieu khien dong co dcBao cao do an dieu khien dong co dc
Bao cao do an dieu khien dong co dc
 
Điều khiển động cơ sử dụng atmega16
Điều khiển động cơ sử dụng atmega16Điều khiển động cơ sử dụng atmega16
Điều khiển động cơ sử dụng atmega16
 
Chuyen mach Cisco Switch
Chuyen mach Cisco SwitchChuyen mach Cisco Switch
Chuyen mach Cisco Switch
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bịLập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
 
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
 
Sự đóng gói cho quá trình vận chuyện gói thoạI
Sự đóng gói cho quá trình vận chuyện gói thoạISự đóng gói cho quá trình vận chuyện gói thoạI
Sự đóng gói cho quá trình vận chuyện gói thoạI
 
Biến tần là gì voi auto base
Biến tần là gì voi auto baseBiến tần là gì voi auto base
Biến tần là gì voi auto base
 
Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2
Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2
Xây dựng ứng dụng VoIP và các vấn đề cần giải quyết 2
 
Mạnh (1)
Mạnh (1)Mạnh (1)
Mạnh (1)
 
Assembly
AssemblyAssembly
Assembly
 
Atmel avr
Atmel avrAtmel avr
Atmel avr
 
Điều khiển động cơ sử dụng IC MCP4921
Điều khiển động cơ sử dụng IC MCP4921Điều khiển động cơ sử dụng IC MCP4921
Điều khiển động cơ sử dụng IC MCP4921
 

More from nataliej4

More from nataliej4 (20)

đồ áN xây dựng website bán laptop 1129155
đồ áN xây dựng website bán laptop 1129155đồ áN xây dựng website bán laptop 1129155
đồ áN xây dựng website bán laptop 1129155
 
Nghệ thuật chiến tranh nhân dân việt nam trong công cuộc xây dựng và bảo vệ t...
Nghệ thuật chiến tranh nhân dân việt nam trong công cuộc xây dựng và bảo vệ t...Nghệ thuật chiến tranh nhân dân việt nam trong công cuộc xây dựng và bảo vệ t...
Nghệ thuật chiến tranh nhân dân việt nam trong công cuộc xây dựng và bảo vệ t...
 
Quản lý dịch vụ ô tô toyota 724279
Quản lý dịch vụ ô tô toyota 724279Quản lý dịch vụ ô tô toyota 724279
Quản lý dịch vụ ô tô toyota 724279
 
Từ vựng tiếng anh luyện thi thpt quốc gia
Từ vựng tiếng anh luyện thi thpt quốc giaTừ vựng tiếng anh luyện thi thpt quốc gia
Từ vựng tiếng anh luyện thi thpt quốc gia
 
Công tác dược lâm sàng tại bv cấp cứu trưng vương
Công tác dược lâm sàng tại bv cấp cứu trưng vươngCông tác dược lâm sàng tại bv cấp cứu trưng vương
Công tác dược lâm sàng tại bv cấp cứu trưng vương
 
Bài giảng nghề giám đốc
Bài giảng nghề giám đốcBài giảng nghề giám đốc
Bài giảng nghề giám đốc
 
đề Cương chương trình đào tạo trình độ trung cấp kế toán tin học
đề Cương chương trình đào tạo trình độ trung cấp kế toán   tin họcđề Cương chương trình đào tạo trình độ trung cấp kế toán   tin học
đề Cương chương trình đào tạo trình độ trung cấp kế toán tin học
 
Giáo trình kỹ thuật an toàn và bảo hộ lao động
Giáo trình kỹ thuật an toàn và bảo hộ lao độngGiáo trình kỹ thuật an toàn và bảo hộ lao động
Giáo trình kỹ thuật an toàn và bảo hộ lao động
 
Lựa chọn trong điều kiện không chắc chắn
Lựa chọn trong điều kiện không chắc chắnLựa chọn trong điều kiện không chắc chắn
Lựa chọn trong điều kiện không chắc chắn
 
Thực trạng phân bố và khai thác khoáng sét ở đồng bằng sông cửu long 4857877
Thực trạng phân bố và khai thác khoáng sét ở đồng bằng sông cửu long 4857877Thực trạng phân bố và khai thác khoáng sét ở đồng bằng sông cửu long 4857877
Thực trạng phân bố và khai thác khoáng sét ở đồng bằng sông cửu long 4857877
 
Sổ tay hướng dẫn khách thuê tòa nhà ree tower
Sổ tay hướng dẫn khách thuê   tòa nhà ree towerSổ tay hướng dẫn khách thuê   tòa nhà ree tower
Sổ tay hướng dẫn khách thuê tòa nhà ree tower
 
Phân tích tác động của thiên lệch hành vi đến quyết định của nhà đầu tư cá nh...
Phân tích tác động của thiên lệch hành vi đến quyết định của nhà đầu tư cá nh...Phân tích tác động của thiên lệch hành vi đến quyết định của nhà đầu tư cá nh...
Phân tích tác động của thiên lệch hành vi đến quyết định của nhà đầu tư cá nh...
 
Bài giảng giáo dục hoà nhập trẻ khuyết tật
Bài giảng giáo dục hoà nhập trẻ khuyết tậtBài giảng giáo dục hoà nhập trẻ khuyết tật
Bài giảng giáo dục hoà nhập trẻ khuyết tật
 
đồ áN thiết kế quần âu nam 6838864
đồ áN thiết kế quần âu nam 6838864đồ áN thiết kế quần âu nam 6838864
đồ áN thiết kế quần âu nam 6838864
 
Tài liệu hội thảo chuyên đề công tác tuyển sinh – thực trạng và giải pháp 717...
Tài liệu hội thảo chuyên đề công tác tuyển sinh – thực trạng và giải pháp 717...Tài liệu hội thảo chuyên đề công tác tuyển sinh – thực trạng và giải pháp 717...
Tài liệu hội thảo chuyên đề công tác tuyển sinh – thực trạng và giải pháp 717...
 
Bài giảng dịch tễ học bệnh nhiễm trùng
Bài giảng dịch tễ học bệnh nhiễm trùngBài giảng dịch tễ học bệnh nhiễm trùng
Bài giảng dịch tễ học bệnh nhiễm trùng
 
Bài giảng môn khởi sự kinh doanh
Bài giảng môn khởi sự kinh doanhBài giảng môn khởi sự kinh doanh
Bài giảng môn khởi sự kinh doanh
 
Giới thiệu học máy – mô hình naïve bayes learning intro
Giới thiệu học máy – mô hình naïve bayes   learning introGiới thiệu học máy – mô hình naïve bayes   learning intro
Giới thiệu học máy – mô hình naïve bayes learning intro
 
Lý thuyết thuế chuẩn tắc
Lý thuyết thuế chuẩn tắcLý thuyết thuế chuẩn tắc
Lý thuyết thuế chuẩn tắc
 
Bài giảng thuế thu nhập (cá nhân, doanh nghiệp)
Bài giảng thuế thu nhập (cá nhân, doanh nghiệp)Bài giảng thuế thu nhập (cá nhân, doanh nghiệp)
Bài giảng thuế thu nhập (cá nhân, doanh nghiệp)
 

Recently uploaded

Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận HạnTử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Kabala
 
Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1
mskellyworkmail
 

Recently uploaded (20)

Luận văn 2024 Tuyển dụng nhân lực tại Công ty cổ phần in Hồng Hà
Luận văn 2024 Tuyển dụng nhân lực tại Công ty cổ phần in Hồng HàLuận văn 2024 Tuyển dụng nhân lực tại Công ty cổ phần in Hồng Hà
Luận văn 2024 Tuyển dụng nhân lực tại Công ty cổ phần in Hồng Hà
 
Luận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌC
Luận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌCLuận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌC
Luận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌC
 
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
 
Báo cáo bài tập lớn E - Marketing Xây dựng kế hoạch marketing điện tử cho nhã...
Báo cáo bài tập lớn E - Marketing Xây dựng kế hoạch marketing điện tử cho nhã...Báo cáo bài tập lớn E - Marketing Xây dựng kế hoạch marketing điện tử cho nhã...
Báo cáo bài tập lớn E - Marketing Xây dựng kế hoạch marketing điện tử cho nhã...
 
XÂY DỰNG KẾ HOẠCH KINH DOANH CHO CÔNG TY KHÁCH SẠN SÀI GÒN CENTER ĐẾN NĂM 2025
XÂY DỰNG KẾ HOẠCH KINH DOANH CHO CÔNG TY KHÁCH SẠN SÀI GÒN CENTER ĐẾN NĂM 2025XÂY DỰNG KẾ HOẠCH KINH DOANH CHO CÔNG TY KHÁCH SẠN SÀI GÒN CENTER ĐẾN NĂM 2025
XÂY DỰNG KẾ HOẠCH KINH DOANH CHO CÔNG TY KHÁCH SẠN SÀI GÒN CENTER ĐẾN NĂM 2025
 
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận HạnTử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Chương 6: Dân tộc - Chủ nghĩa xã hội khoa học
Chương 6: Dân tộc - Chủ nghĩa xã hội khoa họcChương 6: Dân tộc - Chủ nghĩa xã hội khoa học
Chương 6: Dân tộc - Chủ nghĩa xã hội khoa học
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
 
Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1
 
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhàBài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
 
Trích dẫn theo Harvard với Microsoft Word
Trích dẫn theo Harvard với Microsoft WordTrích dẫn theo Harvard với Microsoft Word
Trích dẫn theo Harvard với Microsoft Word
 
Tiểu luận tổng quan về Mối quan hệ giữa chu kỳ kinh tế và đầu tư trong nền ki...
Tiểu luận tổng quan về Mối quan hệ giữa chu kỳ kinh tế và đầu tư trong nền ki...Tiểu luận tổng quan về Mối quan hệ giữa chu kỳ kinh tế và đầu tư trong nền ki...
Tiểu luận tổng quan về Mối quan hệ giữa chu kỳ kinh tế và đầu tư trong nền ki...
 
22 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÁI BÌNH NĂM HỌC 2023-2...
22 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÁI BÌNH NĂM HỌC 2023-2...22 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÁI BÌNH NĂM HỌC 2023-2...
22 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÁI BÌNH NĂM HỌC 2023-2...
 
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
 
TIỂU LUẬN MÔN PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC
TIỂU LUẬN MÔN PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌCTIỂU LUẬN MÔN PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC
TIỂU LUẬN MÔN PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC
 
Nhân vật người mang lốt cóc trong truyện cổ tích thần kỳ Việt Nam
Nhân vật người mang lốt cóc trong truyện cổ tích thần kỳ Việt NamNhân vật người mang lốt cóc trong truyện cổ tích thần kỳ Việt Nam
Nhân vật người mang lốt cóc trong truyện cổ tích thần kỳ Việt Nam
 
Kỹ năng khởi nghiệp Đổi mới sáng tạo cho sinh viên
Kỹ năng khởi nghiệp Đổi mới sáng tạo cho sinh viênKỹ năng khởi nghiệp Đổi mới sáng tạo cho sinh viên
Kỹ năng khởi nghiệp Đổi mới sáng tạo cho sinh viên
 
MỘT SỐ GIẢI PHÁP GÓP PHẦN BẢO TỒN VÀ PHÁT HUY CA TRÙ (CỔ ĐẠM – NGHI XUÂN, HÀ ...
MỘT SỐ GIẢI PHÁP GÓP PHẦN BẢO TỒN VÀ PHÁT HUY CA TRÙ (CỔ ĐẠM – NGHI XUÂN, HÀ ...MỘT SỐ GIẢI PHÁP GÓP PHẦN BẢO TỒN VÀ PHÁT HUY CA TRÙ (CỔ ĐẠM – NGHI XUÂN, HÀ ...
MỘT SỐ GIẢI PHÁP GÓP PHẦN BẢO TỒN VÀ PHÁT HUY CA TRÙ (CỔ ĐẠM – NGHI XUÂN, HÀ ...
 

Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA

  • 1. Đồ án chuyên ngành ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG KHOA ĐIỆN TỬ-VIỄN THÔNG BÁO CÁO ĐỒ ÁN CHUYÊN NGHÀNH ĐỀ TÀI: THIẾT KẾ BỘ TRUYỀN NHẬN UART 8 BIT NẠP TRÊN KIT FPGA Sinh viên thực hiện : Đỗ Tiến Thành Lớp : 09DT2 Giáo viên hướng dẫn: ThS. Võ Tuấn Minh Đà Nẵng, 2014 LỜI CAM ĐOAN Tôi xin cam đoan nội dung của đồ án này không phải là bản sao chép của bất cứ đồ án nào đã có từ trước. Nếu vi phạm tôi xin chịu mọi hình thức kỷ luật của Khoa. Sinh viên thực hiện Đỗ Tiến Thành NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ............................................................................................................................................. ............................................................................................................................................. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 1
  • 2. Đồ án chuyên ngành ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. Đà Nẵng, ngày tháng 1 năm 2014 GIÁO VIÊN HƯỚNG DẪN (Ký tên) LỜI MỞ ĐẦU Ngày nay, trong các hệ thống truyền dữ liệu có hai cách đưa tín hiệu lên đường truyền: nối tiếp và song song. Cách truyền song song thường được truyền trên một khoảng cách ngắn, ví dụ giữa các thiết bị trong cùng một phòng như từ máy tính sang máy in. Cách truyền nối tiếp thường được thực hiện khi khoảng cách truyền khá xa. Ngoài ra, trong cách truyền nối tiếp, dựa vào cách thực hiện sự đồng bộ giữa nơi phát và thu ta có hai chế độ hoạt động: đồng bộvà bất đồng bộ. Trong chế độ bất đồng bộ, xung đồng hồ được tạo ra một cách riêng rẻ ở máy phát và máy thu dựavào tần số danh định tương ứng với vận tốc truyền (bit rate hoặc baud rate). Trong chế độ đồng bộ, nơi phát có thể gửi xung đồng hồ tới nơi thu theo một kênh truyền song song với kênh truyền dữ liệu hoặc nơi thu tự tạo ra xung đồng hồ bằng cách tách tín hiệu thời gian từ dòng dữ liệu. Trong đồ án này, tôi xin được trình bày về chuẩn truyền thông nối tiếp không đồng bộ UART (Universal Asynchronous Receiver Transmitter). Vì truyền thông nối tiếp có các ưu điểm sau: - Khoảng cách truyền xa hơn truyền song song. - Sốdây kết nối ít. - Có thể truyền không dây dùng hồng ngoại. - Có thể ghép nối với vi điều khiển hay PLC (Programmable Logic Device). - Cho phép nối mạng. - Có thể tháo lắp trong lúc máy tính đang làm việc. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 2
  • 3. Đồ án chuyên ngành MỤC LỤC SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 3
  • 4. Đồ án chuyên ngành Chương 1 MÔ TẢ TỔNG QUAN VỀ GIAO TIẾP UART Truyền nối tiếp (serial transmission) các thông tin số hay bit thông qua một dây đơn (single wire) hay một vật liệu trung gian nào đó thì tiết kiệm chi phí hơn nhiều so với truyền song song dùng nhiều dây cùng một lúc. Truyền dữ liệu dùng UART có thể thực hiện theo phương thức song công (full duplex) tức là việc gửi và nhận thực hiện cùng một lúc, hay bán song công (half duplex), tức là các thiết bị thay phiên nhau phát và nhận. Bộ truyền UART phát từng bit trong byte dữ liệu một cách tuần tự. Bộ thu UART chịu trách nhiệm lắp ghép các bit này lại thành các byte hoàn chỉnh. Mỗi UART gồm có hai thanh ghi dịch, được dùng làm thành phần cơ bản trong việc chuyển giữa nối tiếp sang song song và ngược lại. 1.1 Đặc trưng khung truyền Hình 1.1 Định dạng khung truyền cơ bản Mỗi ký tự được gửi sau một bit khởi tạo gọi là start bit ở mức logic thấp, số các bit dữ liệu thường là 7 hay 8 đôi khi là 5, cũng có thể có thêm bit kiểm tra chẵn lẻ (parity bit) và một hay nhiều stop bit ở mức logic cao. Start bit sẽ báo hiệu cho bộ thu một ký tự mới đang được gửi đi (hay nói đúng hơn là đang đến). Tiếp theo sau start bit, bộ thu sẽ nhận từ 5 đến 8 bit dữ liệu, phụ thuộc vào tùy vào cấu hình sử dụng. Theo sau bit dữ liệu có thể là một bit kiểm tra chẵn lẻ và cuối cùng phải có ít nhất một stop bit ở mức cao báo hiệu quá trình truyền một ký tự đã kết thúc. Bộ thu sẽ tiến hành xử lý các bit đã nhận và chờ start bit để nhận byte dữ liệu tiếp theo. Bởi vì start bit luôn là mức logic 0 trong khi stop bit ở mức logic 1 do đó không gây ra hiểu lầm giữa hai bit liên tiếp được truyền. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 4
  • 5. Đồ án chuyên ngành 1.1.1 Bộ nhận dữ liệu Hình 1.2 Bộ nhận dữ liệu Tất cả các hoạt động của phần cứng UART đều được đồng bộ hay điều khiển bởi một tín hiệu xung đồng hồ (clock) chạy với tốc độ bằng một số nhân nguyên nào đó của tốc độ dữ liệu, ví dụ việc truyền hay nhận một bit dữ liệu sẽ kéo dài trong vòng 16 xung clock chẳng hạn. Bộ thu sẽ kiểm tra trạng thái của tín hiệu được gửi đến tại mỗi xung đồng hồ (theo cạnh lên hay cạnh xuống) để xem khi nào xảy ra start bit. Nếu thời gian của một start bit kéo dài ít nhất là một nửa thời gian của một bit dữ liệu, thì nó được xem là hợp lệ và báo hiệu việc truyền một ký tự mới đang xảy ra. Nếu Start bit không đáp ứng yêu cầu, xung này xem như là xung sai (spurious pulse) và bị bỏ qua. Thời gian truyền một bit được giám sát và trạng thái của đường truyền được lấy mẫu tại điểm giữa mỗi bit. Đồng thời tạo ra xung clock (cạnh lên hay xuống) cho phép dịch dữ liệu vào thanh ghi dịch (shift register). Sau khi kết thúc một khung dữ liệu, nội dung của thanh ghi dịch đã được chuẩn bị sẵn sàng ở dạng song song để gửi tới bộ xử lý dữ liệu trong hệ thống. UART lúc này sẽ đặt một cờ (flag) để báo hiệu dữ liệu mới nhận đã sẵn sàng, hoặc nó cũng có thể tạo ra một ngắt (interrupt) để yêu cầu bộ xử lý nhận dữ liệu vừa nhận được. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 5
  • 6. Đồ án chuyên ngành Trong một vài kiểu UART, một bộ nhớ đệm nhỏ kiểu FIFO (First In First Out) được đặt giữa thanh ghi dịch của bộ thu và bộ xử lý, việc làm này cho phép bộ xử lý có nhiều thời gian hơn để thao tác trên dữ liệu nhằm hạn chế việc mất dữ liệu trong trường hợp tốc độ xử lý của bộ xử lý chậm hơn quá trình nhận dữ liệu. 1.1.2 Bộ phát dữ liệu Hình 1.3 Bộ phát dữ liệu Một bộ nhớ đệm nhỏ kiểu FIFO (First In First Out) được đặt giữa thanh ghi dịch của bộ phát và bộ xử lý giống như bên bộ nhận dữ liệu. Ngay sau khi dữ liệu được gửi vào thanh ghi dịch thì phần cứng UART sẽ tạo ra start bit, và dịch số bit dữ liệu yêu cầu ra ngoài đường truyền, tạo ra và ghép bit kiểm tra chẵn lẻ vào cuối byte dữ liệu truyền nếu có, đồng thời chèn luôn cả stop bit. Bởi việc truyền một khung dữ liệu có thể tương đối lâu so với tốc độ của bộ xử lý, nên UART sẽ duy trì một cờ báo hiệu trạng thái bận để hệ thống không ghi byte dữ liệu mới vào cho đến khi dữ liệu tại đã được truyền xong, việc báo hiệu này có thể thực hiện thông qua một ngắt. 1.1.3 Tốc độ Baud Baud rate là đại lượng xác định tốc độ phát bit dữ liệu trong truyền bất đồng bộ, đơn vị là bps (bit per second). SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 6
  • 7. Đồ án chuyên ngành Bình thường, baud rate dùng để đo số bit thực sự được gửi trên kênh truyền chứ không phải là lượng dữ liệu thực sự được gửi từ máy này sang máy khác.Việc tính baud rate còn gồm cả những start bit, stop bit hay bit kiểm tra chẵn lẻ được tạo ra bởi UART gửi nhưng bị loại bỏ bởi UART thu. Điều này có nghĩa rằng những từ dữ liệu có độ dài 7 bit phải cần đến ít nhất 9 bit hoặc 10 bit (nếu có bit kiểm tra chẵn lẻ) để truyền . Do đó, một modem có khả năng phát 300 bit trên giây từ nơi này sang nơi khác thì có thể truyền 30 khung dữ liệu 7 bit nếu có dùng bit kiểm tra chẵn lẻ, 1 stop bit và 1 start bit. Như vậy, số bit dữ liệu thực sự trong một giây của modem là 210 bit, số bit được chèn thêm là 90 bit. Chương 2 PHÂN TÍCH TỔNG QUAN VÀ THIẾT KẾ CÁC KHỐI CHỨC NĂNG CỦA BỘ UART Thiết kế một bộ truyền bất đồng bộ theo chuẩn UART thử nghiệm trên KIT FPGA. Cụ thể, thiết kế bộ truyền nối tiếp theo chuẩn UART (Universal Asynchronous Receiver SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 7
  • 8. Đồ án chuyên ngành Transmitter) có các đặc điểm như sau: Cấu hình được tốc độ BAUD (tốc độ truyền dữ liệu) theo công thức : Trong đó: fbaud là tốc độ BAUD cần cấu hình, BRG là thanh ghi thiết lập tốc độ baud có độ rộng 8 bit, fosc là tần số xung clock trong mạch. Khung dữ liệu gồm: 1 start bit, 8 bit dữ liệu, 1 stop bit 8 bit dữ liệu cần truyền có giá trị từ H00 đến HFF sẽ được chuyển đổi dạng mã ASCII trước khi truyền đi. Ví dụ: Dữ liệu cần truyền là: H85 sẽ được đổi thành H38 (là mã ASCII của số 8) và H35(là mã ASCII của số 5). Sau đó hai giá trị H38 và H35 sẽ được truyền đi qua đường truyền nối tiếp. 2.1 Những yêu cầu của thiết kế : - Tốc độ baud được chọn cố định trước khi tổng hợp thông qua biến BRG. - Khung dữ liệu gồm 1 bit start, 8 bit dữ liệu, 1 bit stop. - Truyền nhận song công (Dữ liệu được truyền đồng thời theo 2 hướng). Hình 2.1 Truyền nhận song công  Sơ đồ khối tổng quát: Thiết kế có 4 khối cơ bản như sau SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 8
  • 9. Đồ án chuyên ngành Lõi UART-FPGA gồm các khối chính như sau: Khối truyền nối tiếp (TRANSMITTER): Nhận dữ liệu từ ngõ vào data_in và phát đi dựa trên tốc độ baud đã được tính trong khối BAUD RATE. Khối nhận dữ liệu nối tiếp (RECEIVER): Phát hiện, lấy mẫu và lưu trữ dữ liệu nhận nối tiếp từ chân RX của UART ngoài thông qua tín hiệu uart_rx với tốc độ baud SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 9
  • 10. Đồ án chuyên ngành đã được tính ở khối BAUD RATE. Khối này có thêm bộ đệm FIFO 8 tầng để lưu tạm dữ liệu và tránh mất mát dữ liệu. Khối tạo tốc độ truyền (BAUD RATE): Dựa vào thông số tốc độ truyền được cấu hình, khối này sẽ tính toán và tạo xung nhịp truyền dữ liệu khi phát và lấy mẫu dữ liệu khi nhận. Khối điều khiển và hiển thị (CONTROL DISPLAY): tiếp nhận tín hiệu điều khiển tx_in để tạo ra tín hiệu cho phép khối truyền dữ liệu của UART hoạt động. Đồng thời nhận các giá trị dữ liệu từ khối nhận dữ liệu của UART để giải mã LED 7 đoạn và hiển thị kết quả. Bốn khối trên sẽ được kết nối với nhau thành một thiết kế hoàn chỉnh ở file core_uart. 2.2 Sơ đồ tín hiệu vào ra và sơ đồ chi tiết các khối thiết kế 2.2.1 Khối TRANSMITTER *Sơ đồ tín hiệu giao tiếp *Chức năng các tín hiệu: Tên tín hiệu Chiều Mô tả clk input Clock đồng bộ. reset_n input Reset đồng bộ,tích cực mức thấp. uart_en input Cho phép hoạt động,tích cực mức cao. tx_enable input Cho phép bắt đầu truyền dữ liệu. data_in[7:0] input Bus dữ liệu truyền. brg_tx_clken input Tín hiệu xác định vị trí dịch dữ liệu SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 10
  • 11. Đồ án chuyên ngành khi bộ truyền hoạt động. uart_tx output Ngõ ra nối tiếp của dữ liệu truyền ,gán ra cổng RS232. *Máy trạng thái của bộ truyền dữ liệu: *Mô tả các trạng thái : Trạng thái hiện tại Mô tả Điều kiện Trạng thái kế tiếp IDLE Trạng thái rảnh khi bộ truyền không hoạt động. tx_enable LOAD_TXS LOAD_TXS Trạng thái nạp dữ liệu vào thanh ghi dịch. SHIFT_DATA Trạng thái truyền brg_tx_clken & SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 11
  • 12. Đồ án chuyên ngành SHIFT_DATA từng bit dữ liệu. tx_count = “1001” IDLE *Sơ đồ chi tiết khối TRANSMITTER: Bộ cộng để tăng giá trị bộ đếm lên, bộ MUX để chọn các ngõ vào khác nhau phụ thuộc vào giá trị của 2 tín hiệu set_tx_count và shift_en như hình vẽ, Flip Flop là DFF để tạo thanh ghi lưu giá trị đếm. Bộ so sánh bằng để quyết định giá trị của tín hiệu set_tx_count. Bộ đếm để tạo tín hiệu tx_count[3:0], cứ khi nào dịch được 1 bit trong thanh ghi tsr[9:0] thì giá trị bộ đếm tăng lên 1 .Khi tx_count = “1001” thì dữ liệu đã được truyền xong. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 12
  • 13. Đồ án chuyên ngành Khối gồm các cổng logic: cổng AND4 để tạo tín hiệu shift_en cho phép dịch, các bộ so sánh để tạo các tín hiệu tương ứng, bộ MUX để chọn các tín hiệu ngõ vào dựa vào 2 tín hiệu shift_en và load_data, các DFF để tạo các thanh ghi tsr[9:0] vào tín hiệu uart_tx. Khối tạo thanh ghi dịch tsr 10 bit {gồm 1 bit start, 8 bit data_in, 1 bit stop) , khi có xung brg_tx_clken và đủ các điều kiện như mô tả ở máy trạng thái thì dữ liệu trong thanh ghi sẽ được dịch đến ngõ ra nối tiếp uart_tx của tín hiệu truyền cho tới khi truyền hết 8 bit data_in. 2.2.2 Khối RECEIVER *sơ đồ tín hiệu giao tiếp SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 13
  • 14. Đồ án chuyên ngành *Chức năng các tín hiệu: Tên tín hiệu Chiều Mô tả clk input Clock đồng bộ. reset_n input Reset đồng bộ,tích cực mức thấp. uart_en input Cho phép hoạt động,tích cực mức cao. brg_rx_clken input Xung cho phép xác định vị trí lấy mẫu dữ liệu. uart_rx input Đường nhận dữ liệu truyền nối tiếp ,gán ra cổng RS232. fifo_rd input Cho phép đọc dữ liệu từ FIFO ra. rc_data[7:0] output Dữ liệu nhận được của khối RECEIVER. fifo_full output Cờ báo FIFO đầy,không ghi được dữ liệu vào FIFO nữa. fifo_empty output Cờ báo FIFO trống,có thể ghi được dữ liệu vào FIFO. *Máy trạng thái của bộ nhận dữ liệu: SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 14
  • 15. Đồ án chuyên ngành *Mô tả các trạng thái : Trạng thái hiện tại Mô tả Điều kiện Trạng thái kế tiếp IDLE Trạng thái rảnh khi bộ nhận không hoạt động. tx_en CHECK_START_BIT CHECK_START_BIT Trạng thái lấy mẫu và kiểm tra bit start. samp_count =“0111” & uart_rx_sync=”1” IDLE samp_count =“0111” & uart_rx_sync=”0” RECEIVE_DATA RECEIVE_DATA Trạng thái lấy mẫu các bit trên đường nhận dữ liệu nối tiếp. rx_count = “1010” IDLE *Sơ đồ chi tiết khối RECEIVER: Mạch đếm xung lấy mẫu: SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 15
  • 16. Đồ án chuyên ngành Mạch gồm các bộ so sánh bằng để tạo các tín hiệu tương ứng trên hình vẽ, các cổng OR2, AND2 để tạo tín hiệu inc_samp_count, bộ MUX để chọn các ngõ vào dựa vào 2 tín hiệu inc_samp_count và clr_samp_count, thanh ghi DFF để tạo tín hiệu samp_count[3:0]. Giá trị bộ đếm samp_count[3:0] sẽ tăng lên 1 khi các điều kiện của bộ MUX được thỏa mãn. Mạch đếm số bit nhận được: Mạch gồm các bộ so sánh bằng để tạo các tín hiệu tương ứng trên hình vẽ, cỏng AND3 để tạo tín hiệu inc_rx_count, bộ MUX để chọn các ngõ vào dựa vào 2 tín hiệu inc_rx_count và set_comp, thanh ghi DFF để tạo tín hiệu rx_bitcount[3:0]. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 16
  • 17. Đồ án chuyên ngành Khi nhận được 1 bit thì rx_bitcount[3:0] sẽ tăng lên 1. Khi đã nhận đủ 10 bit của thanh ghi dịch tsr[9:0] thì bộ đếm sẽ được reset nhờ tín hiệu clr_rx_count. Mạch tạo thanh ghi dịch bên bộ nhận: Mạch gồm bộ MUX để chọn các ngõ vào dựa vào tín hiệu inc_rx_count, thanh ghi DFF để tạo tín hiệu rsr[7:0] Tạo thanh ghi dịch 8 bit rsr[7:0] để nhận 8 bit data_in từ thanh ghi dịch tsr[9:0] bên khối truyền.Khi có tín hiệu cho phép dịch inc_rx_count thì dữ liệu trong thanh ghi sẽ được dịch qua phải 1 bit để đưa vào FIFO nhận. Mạch bắt cạnh tín hiệu cho phép FIFO nhận: SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 17
  • 18. Đồ án chuyên ngành Việc nhấn và giữ một nút (KEY) sẽ tạo ra mức logic 1 kéo dài trong nhiều xung clock hê thống. Nếu ta đưa trực tiếp tín hiệu fifo_rd vào để xét điều kiện đọc FIFO thì sẽ không chính xác và không kiểm soát được số lần đọc. Để một lần nhấn nút tương ứng với một byte dữ liệu được đọc đi thì ta phải tạo ra tín hiệu cho phép chỉ tích cực trong đúng một chu kỳ của xung clock hệ thống. Mạch trên đây sẽ thực hiện điều đó. Dạng sóng mô phỏng : Sau 2 chu kì của tín hiệu fifo_rd thì phát hiện được cạnh của fifo_rd_enable. FIFO 8 tầng nhận dữ liệu: SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 18
  • 19. Đồ án chuyên ngành Khi FIFO chưa Full,dữ liệu từ thanh ghi rsr[7:0] sẽ được ghi vào FIFO nhờ con trỏ cho phép ghi wptr[3:0] và tín hiệu fifo_we. Dữ liệu đọc ra thanh ghi rc_data[7:0] chính là dữ liệu nhận được để hiển thị trên LED 7 đoạn. Con trỏ cho phép đọc rptr[3:0] sẽ cho phép đọc dữ liệu ra từ FIFO. Mạch tạo ra con trỏ dữ liệu wptr[3:0] và rptr[3:0] : Khi có tín hiệu fifo_we =1 thì bộ đếm sẽ hoạt động và con trỏ wptr[3:0] sẽ tăng lên 1.Khi có tín hiệu fifo_re =1 thì bộ đếm sẽ hoạt động và con trỏ rptr[3:0] sẽ tăng lên 1. Mạch tạo các cờ báo trạng thái của FIFO: SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 19
  • 20. Đồ án chuyên ngành Mạch gồm các cổng XOR2, AND2, bộ so sánh bằng để tạo các tín hiệu tương ứng như hình vẽ. Khi con trỏ wptr[2:0] = rptr[2:0] và bit có trọng số cao nhất wptr[3] khác rptr[3] thì tín hiệu fifo_full = 1 ,cờ này báo hiệu FIFO đầy, không thể ghi thêm dữ liệu vào FIFO. Khi con trỏ wptr[2:0] = rptr[2:0] và bit có trọng số cao nhất wptr[3] giống rptr[3] thì tín hiệu fifo_empty = 1 ,cờ này báo hiệu FIFO chưa đầy, có thể ghi thêm dữ liệu vào FIFO. 2.2.3 Khối BAUD RATE *Sơ đồ tín hiệu giao tiếp *Chức năng các tín hiệu: Tên tín hiệu Chiều Mô tả clk input Clock đồng bộ. reset_n input Reset đồng bộ .Tích cực mức thấp. uart_en input Cho phép hoạt động.Tích SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 20
  • 21. Đồ án chuyên ngành cực mức cao. brg_tx_clken output Xung cho phép dịch từng bit dữ liệu khi bộ truyền hoạt động. brg_rx_clken output Xung cho phép xác định vị trí lấy mẫu dữ liệu. Mô tả xung truyền và xung nhận : Tốc độ baud được chọn gán trước khi tổng hợp thông qua biến BRG theo công thức sau: fbaud tính theo đơn vị bps, fosc là tần số xung clock . Xung Tx cho phép bắt đầu truyền 1 bit dữ liệu(Data) bên phát, ở bên thu khi nhận được 1 bit dữ liệu thì cũng có 1 xung Rx được lấy mẫu ở giữa bit dữ liệu . Khoảng thời gian lấy mẫu của Tx và Rx là 16x(n+1) xung CLOCK, với n là tham số nạp vào để cấu hình cho tốc độ Baud. *Sơ đồ chi tiết khối BAUD RATE: Mạch tạo xung truyền : SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 21
  • 22. Đồ án chuyên ngành Mạch gồm bộ cộng để tăng giá trị đếm lên 1, cổng AND2, các bộ MUX để chọn các giá trị ngõ vào khác nhau, bộ so sánh bằng, thanh ghi DFF để tạo tín hiệu tx_count[15:0]. Khi có tín hiệu uart_en = 1, thì BRG sẽ được nạp vào ,bộ đếm sẽ bắt đầu đếm từ 0 cho tới khi tx_counter[15:0] = {16x(BRG + 1) -1} thì brg_tx_clken = 1. Mạch tạo xung nhận : Mạch gồm bộ cộng để tăng giá trị đếm lên 1, cổng AND2, các bộ MUX để chọn các giá trị ngõ vào khác nhau, bộ so sánh bằng, thanh ghi DFF để tạo tín hiệu rx_count[11:0]. Khi có tín hiệu uart_en = 1, thì BRG sẽ được nạp vào ,bộ đếm sẽ bắt đầu đếm từ 0 cho tới khi rx_counter[11:0] = BRG thì brg_rx_clken = 1. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 22 Tải bản FULL (file word 47 trang): bit.ly/2Ywib4t Dự phòng: fb.com/KhoTaiLieuAZ
  • 23. Đồ án chuyên ngành 2.2.4 Khối CONTROL DISPLAY *Sơ đồ tín hiệu giao tiếp *Chức năng các tín hiệu: Tên tín hiệu Chiều Mô tả clk input Clock đồng bộ . reset_n input Reset đồng bộ .Tích cực mức thấp. uart_en input Cho phép hoạt động.Tích cực mức cao. tx_in input Cho phép ghi dữ liệu từ bus data_in vào bộ truyền. rc_data[7:0] input Giá trị dữ liệu nhận được từ khối RECEIVER. tx_enable output Tín hiệu cho phép bộ truyền bắt đầu hoạt động. hex0[6:0] output Giá trị giải mã LED 7 đoạn của 4 bit thấp trong Byte dữ liệu nhận được. hex1[6:0] output Giá trị giải mã LED 7 đoạn của 4 bit cao trong Byte dữ liệu nhận được. SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 23 Tải bản FULL (file word 47 trang): bit.ly/2Ywib4t Dự phòng: fb.com/KhoTaiLieuAZ
  • 24. Đồ án chuyên ngành uart_tx output Đường truyền dữ liệu nối tiếp bất đồng bộ gán ra cổng RS232. *Sơ đồ chi tiết khối CONTROL DISPLAY Mạch giải mã LED 7 đoạn cho dữ liệu nhận hiện tại: Chức năng: giải mã 4 bit của rc_data thành 7 bit để hiện thị trên LED 7 đoạn Mạch tạo tín hiệu cho phép truyền : SVTH: ĐỖ TIẾN THÀNH – LỚP 09DT2 Trang 24 3843102