کد VHDL قابل سنتز پروژه UART شامل فرستنده و گیرنده سریال
UART یا گیرنده/فرستنده ناهمزمان، یک پروتکل سریال ساده و پرکاربرد است که برای ارسال و دریافت دادهها بین دو دستگاه دیجیتال استفاده میشود. این پروتکل به دلیل سادگی در بسیاری از کاربردهای embedded systems، میکروکنترل ها، و دستگاههای الکترونیکی استفاده میشود. UART یک پروتکل ارتباطی سریال ناهمزمان است که به هر بیت از دادههای ارسالی یا دریافتی یک بیت شروع (start bit) و یک یا دو بیت توقف (stop bit) اضافه میکند. این پروتکل بدون نیاز به سیگنالهای هماهنگی (clock signal) بین فرستنده و گیرنده عمل میکند و از نرخ baud برای همگامسازی استفاده میکند. کد VHDL حاضر دارای دو بخش UART_RX و UART_TX است. این دو کد VHDL یکی فرستنده و دیگری گیرنده سریال می باشد که در پروژه های مختلف قابل استفاده است. Entity بخش فرستنده (UART_TX.vhd) بصورت زیر است: entity uart_tx is Port ( clk : in std_logic; rst : in std_logic; start : in std_logic; data_in : in std_logic_vector(7 downto 0); tx : out std_logic; ready : out std_logic );end uart_tx; …