I. Tổng quan về High Speed UART với giao thức APB
Đồ án tốt nghiệp tại Đại học Sư phạm Kỹ thuật TP.HCM tập trung nghiên cứu khối IP High-Speed UART giao tiếp qua bus APB. Giao thức UART truyền thống đóng vai trò quan trọng trong việc trao đổi dữ liệu nối tiếp không đồng bộ. Tuy nhiên, các hệ thống nhúng hiện đại đòi hỏi tốc độ truyền tải cao hơn và khả năng tương thích với kiến trúc SoC phức tạp. Chuẩn bus APB thuộc kiến trúc ARM AMBA mang lại cơ chế giao tiếp tối ưu cho các thiết bị ngoại vi tiêu thụ năng lượng thấp. Giao thức này sử dụng cấu trúc điều khiển đơn giản gồm các chu kỳ Setup và Access. Sự kết hợp giữa UART tốc độ cao và bus APB tạo ra một khối chức năng mạnh mẽ. Khối IP này đáp ứng nhu cầu kết nối dữ liệu nhanh giữa bộ xử lý trung tâm và các module ngoại vi. Nghiên cứu do sinh viên ngành Công nghệ Kỹ thuật Máy tính thực hiện dưới sự hướng dẫn của TS. Đỗ Duy Tân. Toàn bộ thiết kế hướng tới việc hiện thực hóa phần cứng chuẩn xác trên nền tảng FPGA và ASIC.
1.1. Vai trò của High Speed UART trong hệ thống nhúng
UART là giao thức truyền thông nối tiếp điểm-điểm được ứng dụng rộng rãi. Giao thức này sử dụng hai đường truyền độc lập gồm TX và RX. Dữ liệu truyền đi theo từng khung chuẩn với start bit, dữ liệu, parity bit và stop bit. Trong các hệ thống hiệu năng cao, tốc độ baud tiêu chuẩn cũ không còn đáp ứng đủ lưu lượng truyền tải. Khối High-Speed UART nâng cao băng thông giao tiếp lên đến vài Mbps mà vẫn giữ nguyên tính ổn định. Giải pháp này giúp các vi điều khiển và cảm biến trao đổi thông tin mượt mà. Hệ thống giảm thiểu độ trễ xử lý và tránh hiện tượng nghẽn cổ chai dữ liệu.
1.2. Đặc tính kỹ thuật của chuẩn giao tiếp APB bus
APB là giao thức bus ngoại vi tiêu chuẩn trong hệ sinh thái ARM AMBA. Giao thức này tối ưu hóa diện tích mạch và giảm điện năng tiêu thụ. Bus APB hoạt động trên cơ chế truyền đồng bộ theo xung nhịp hệ thống PCLK. Quá trình trao đổi dữ liệu diễn ra qua hai pha chính gồm pha thiết lập Setup và pha truy cập Access. Các tín hiệu then chốt bao gồm PSEL, PENABLE, PWRITE, PWDATA, PRDATA và PREADY. Đặc biệt, tín hiệu PSTRB cho phép ghi dữ liệu theo từng byte độc lập trên đường truyền 32-bit. Giao thức APB giúp đơn giản hóa mạch ghép nối thanh ghi cấu hình. Đây là lựa chọn lý tưởng cho các khối ngoại vi như UART, SPI và I2C.
II. Phân tích thách thức thiết kế High Speed UART APB
Thiết kế khối giao tiếp High-Speed UART đặt ra nhiều thách thức kỹ thuật phần cứng. Vấn đề cốt lõi nằm ở sự chênh lệch tần số giữa xung nhịp bus hệ thống và tốc độ baud của cổng nối tiếp. Khi tốc độ baud tăng cao lên mức megabit, biên độ dung sai thời gian bị thu hẹp đáng kể. Tín hiệu nhận rất dễ xảy ra lỗi lấy mẫu do ảnh hưởng của xung jitter hoặc trôi pha đồng hồ. Ngoài ra, việc truyền dữ liệu liên tục với tốc độ cao dễ dẫn đến hiện tượng tràn bộ đệm nếu hệ thống xử lý không kịp thời. Bộ đệm FIFO cần được tính toán dung lượng hợp lý nhằm cân bằng giữa tài nguyên phần cứng và hiệu suất lưu chuyển dữ liệu. Quá trình ánh xạ các tín hiệu điều khiển của bus APB sang các cờ trạng thái UART đòi hỏi độ chính xác tuyệt đối. Cơ chế bắt tay dữ liệu phải triệt tiêu hoàn toàn nguy cơ tranh chấp bus hoặc mất mát dữ liệu trong suốt quá trình truyền nhận.
2.1. Thách thức đồng bộ hóa miền xung nhịp bất đồng bộ
Sự lệch pha giữa xung nhịp hệ thống và tín hiệu RX nối tiếp tiềm ẩn nguy cơ siêu ổn định. Hiện tượng metastability xuất hiện khi tín hiệu đầu vào thay đổi trong khoảng thời gian thiết lập hoặc giữ của flip-flop. Hậu quả là dữ liệu đầu ra dao động không xác định, gây sai lệch trạng thái logic. Để khắc phục, thiết kế cần triển khai các tầng flip-flop đồng bộ hóa kép. Đồng thời, kỹ thuật lấy mẫu đa điểm (oversampling) được áp dụng để xác định vị trí tâm bit chính xác. Quá trình tính toán chu kỳ baud phải triệt tiêu sai số làm tròn để duy trì độ tin cậy khi truyền nhận dữ liệu ở tốc độ cao.
2.2. Nguy cơ nghẽn hàng đợi FIFO và lỗi đóng khung dữ liệu
Khi tốc độ baud đạt ngưỡng 3.125 Mbps, dữ liệu đến cổng RX với mật độ rất dày đặc. Nếu bộ xử lý trung tâm bị chiếm dụng bởi các tác vụ ưu tiên khác, hàng đợi FIFO thu dễ rơi vào tình trạng tràn bộ đệm Overrun Error. Ngược lại, phía truyền Transmitter có thể gặp lỗi Underrun nếu FIFO rỗng giữa chừng trong khi khung truyền đang mở. Lỗi đóng khung Framing Error cũng thường xảy ra khi stop bit không đạt mức logic cao hợp lệ. Lỗi Parity phát sinh nếu đường truyền bị can nhiễu vật lý. Việc quản lý các cờ báo lỗi và cờ ngắt trong giao diện thanh ghi APB đóng vai trò then chốt nhằm ngăn chặn sự cố tê liệt hệ thống.
III. Giải pháp thiết kế và xác minh High Speed UART APB
Nhóm nghiên cứu tại ĐH Sư phạm Kỹ thuật TP.HCM xây dựng kiến trúc phần cứng module hóa cao cho khối High-Speed UART. Thiết kế bao gồm bốn khối chính: APB Interface, Baud Rate Generator, Transmitter và Receiver kết hợp FIFO hai chiều. Khối Baud Rate Generator tích hợp bộ đếm counter và thanh ghi chia tỉ lệ baud_div cho phép cấu hình tốc độ truyền linh hoạt. Với xung hệ thống 50 MHz, khối tạo xung đạt tốc độ baud tối đa 3.125 Mbps một cách ổn định. Khối Transmitter điều khiển bởi máy trạng thái hữu hạn FSM thực hiện chuyển đổi dữ liệu song song từ FIFO sang luồng nối tiếp chuẩn xác. Khối Receiver áp dụng cơ chế giải mã khung tin cậy để phục hồi dữ liệu về dạng song song. Quy trình xác minh chức năng được tiến hành bài bản thông qua môi trường kiểm thử chuyên sâu. Các kịch bản mô phỏng kiểm tra đầy đủ các góc kiểm thử từ trường hợp lý tưởng đến trường hợp biên ngẫu nhiên.
3.1. Thiết kế vi kiến trúc khối tạo xung và bộ phát dữ liệu
Khối Baud Rate Generator sử dụng bộ so sánh kết hợp MUX và D Flip-Flop. Mỗi chu kỳ clock đầu vào, bộ đếm tăng dần đến giá trị baud_div và phát ra xung nhịp baud đồng bộ trước khi tự động tái lập về 0. Khối Transmitter tiếp nhận byte dữ liệu từ hàng đợi TX FIFO và nạp vào thanh ghi dịch. Máy trạng thái FSM điều phối các giai đoạn: phát start bit mức thấp, truyền tuần tự từng bit dữ liệu từ LSB đến MSB, tính toán chèn parity bit và đóng khung bằng stop bit mức cao. Hoạt động của FSM bảo đảm đúng chuẩn thời gian tín hiệu và tương thích hoàn toàn với thông số baud rate được lập trình.
3.2. Phương pháp xác minh chức năng qua mô phỏng testbench
Quy trình xác minh chức năng kiểm chứng tính toàn vẹn của thiết kế ở mức RTL. Môi trường testbench tự động tạo luồng dữ liệu kích thích ngẫu nhiên và kiểm tra kết quả trả về. Kiểm thử tập trung vào tính tương thích bus APB gồm các chu kỳ đọc, ghi thanh ghi có và không có tín hiệu PSTRB. Các kịch bản truyền nhận đồng thời Full-Duplex ở tốc độ 3.125 Mbps được kiểm tra chi tiết. Testbench kiểm chứng độ chính xác của các cờ ngắt khi bộ đệm FIFO đầy hoặc rỗng. Các trường hợp bơm lỗi nhân tạo như lỗi parity và lỗi đóng khung framing được thực hiện để đánh giá khả năng phản hồi của hệ thống. Kết quả mô phỏng khẳng định thiết kế đáp ứng 100% mục tiêu chức năng.
IV. Đánh giá kết quả và ứng dụng High Speed UART APB
Đồ án tốt nghiệp tại Đại học Sư phạm Kỹ thuật TP.HCM đã hoàn thành xuất sắc các mục tiêu thiết kế và xác minh khối IP High-Speed UART với giao thức APB. Kết quả tổng hợp mạch cho thấy thiết kế tiết kiệm diện tích phần cứng logic và tối ưu hóa điện năng tiêu thụ. Mạch hoạt động bền bỉ, đáp ứng tốc độ baud lên tới 3.125 Mbps trên nền tần số xung nhịp 50 MHz. Báo cáo khóa luận được hội đồng chuyên môn đánh giá cao về tính học thuật, phương pháp luận chặt chẽ và khả năng ứng dụng thực tế. Khối IP này sẵn sàng để tích hợp vào các vi điều khiển nhúng, bộ vi xử lý RISC-V hoặc các chip chuyên dụng SoC. Giải pháp mở ra tiềm năng lớn trong việc kết nối các mô-đun truyền thông công nghiệp, thiết bị IoT và thiết bị đo kiểm. Đây là tiền đề kỹ thuật vững chắc để sinh viên phát triển các hệ thống bán dẫn tiên tiến trong tương lai.
4.1. Tiềm năng ứng dụng trong vi mạch tích hợp SoC
Khối High-Speed UART giao tiếp APB đóng vai trò cổng truyền nhận dữ liệu ngoại vi tiêu chuẩn trong kiến trúc SoC. Nhờ tuân thủ chuẩn AMBA, khối IP này dễ dàng ghép nối trực tiếp với thanh ghi điều khiển của vi xử lý lõi. Khả năng truyền dẫn tốc độ cao phục vụ đắc lực cho các tác vụ nạp chương trình firmware, truyền dữ liệu cảm biến thời gian thực và ghi log hệ thống. Cấu trúc phần cứng nhỏ gọn giúp tiết kiệm tài nguyên silicon và hạ giá thành sản xuất chip. Đây là thành phần thiết yếu trong các hệ thống nhúng thông minh, thiết bị mạng và các vi điều khiển công nghiệp tiên tiến.
4.2. Hướng phát triển và tối ưu hóa kiến trúc tương lai
Nghiên cứu mở ra nhiều hướng mở rộng giá trị cho thiết kế vi mạch. Đề xuất phát triển tiếp theo bao gồm việc tích hợp bộ điều khiển truy cập bộ nhớ trực tiếp Direct Memory Access (DMA). Cơ chế DMA giúp giải phóng năng lực xử lý của CPU bằng cách tự động chuyển dữ liệu giữa UART và bộ nhớ chính. Bên cạnh đó, tính năng tự động nhận diện tốc độ baud (Auto-baud detection) sẽ tăng cường tính linh hoạt trong quá trình kết nối thiết bị. Việc nâng cấp giao diện sang chuẩn APB4 hoặc AXI-Lite cũng giúp tối ưu hóa hiệu năng truyền dẫn trên các nền tảng SoC hiện đại hơn.