Logo MICROCHIP

Penerima Pemancar Asinkron Universal MICROCHIP Core16550

MICROCHIP -Core16550 -Produk-Penerima-Pemancar-Asinkron-Universal

Perkenalan

Core16550 adalah Penerima-Pemancar Asinkron Universal (UART) standar yang memastikan kompatibilitas perangkat lunak dengan perangkat 16550 yang banyak digunakan. CoreXNUMX menangani konversi data serial ke paralel untuk input dari modem atau perangkat serial lainnya dan melakukan konversi paralel ke serial untuk data yang dikirim dari CPU ke perangkat-perangkat tersebut.
Selama transmisi, data ditulis secara paralel ke buffer First-In, First-Out (FIFO) UART. Data tersebut kemudian diserialisasi untuk keluaran. Saat menerima, UART mengubah data serial yang masuk menjadi data paralel dan memungkinkan akses yang mudah bagi prosesor.
Aplikasi umum UART 16550 diilustrasikan dalam gambar berikut.

Gambar 1. Aplikasi 16550 Umum

MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (2)Tabel 1. Ringkasan Core16550

MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (3)

Fitur Utama
Berikut ini adalah fitur utama Core16550:

  • Pemancar dan penerima masing-masing diberi buffer dengan FIFO hingga 16-byte untuk mengurangi jumlah interupsi yang disajikan ke CPU.
  • Menambahkan atau menghapus bit komunikasi asinkron standar (Mulai, Berhenti, dan Paritas).
  • Interupsi transmisi, penerimaan, status jalur, dan set data yang dikontrol secara independen
  • Generator baud yang dapat diprogram
  • Fungsi kontrol modem (CTSn, RTSn, DSRn, DTRn, RIn dan DCDn).
  • Antarmuka register Advanced Peripheral Bus (APB).

Fitur yang Dihentikan
Dukungan Bahasa Deskripsi Perangkat Keras Sirkuit Terpadu Kecepatan Sangat Tinggi (VHSIC) (VHDL) akan dihentikan dari versi ini.
Informasi Log Perubahan Core16550
Bagian ini memberikan penjelasan yang komprehensifview fitur-fitur baru yang disertakan, dimulai dengan rilis terbaru.

Versi Apa yang Baru
Core16550 v3.4 Core16550 menggunakan kata kunci Verilog sistem "break" sebagai nama register yang menyebabkan masalah kesalahan sintaksis. Kata kunci tersebut diganti dengan nama lain untuk mengatasi masalah ini.

Menambahkan dukungan keluarga PolarFire®

Core16550 v3.3 Menambahkan dukungan keluarga FPGA yang toleran terhadap radiasi (RTG4™)
  1. Deskripsi Blok Fungsional (Ajukan Pertanyaan)
    Bagian ini memberikan deskripsi singkat untuk setiap elemen diagram blok internal seperti yang ditampilkan pada gambar berikut.
    Gambar 1-1. Diagram Blok Core16550
    MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (4)

Elemen Diagram Blok Internal (Ajukan Pertanyaan)
Bagian berikut menyediakan informasi tentang elemen diagram blok internal.

  1. RWControl (Ajukan Pertanyaan)
    Blok RWControl bertanggung jawab untuk menangani komunikasi dengan sisi prosesor (paralel) sistem. Semua penulisan dan pembacaan register internal dilakukan melalui blok ini.
  2. UART_Reg (Ajukan Pertanyaan)
    Blok UART_Reg menampung semua register internal perangkat.
  3. RXBlock (Ajukan Pertanyaan)
    Ini adalah blok penerima. RXBlock menerima kata serial yang masuk. Blok ini dapat diprogram untuk mengenali lebar data, seperti 5, 6, 7, atau 8 bit; berbagai pengaturan paritas, seperti genap, ganjil, atau tanpa paritas; dan berbagai bit henti, seperti 1, 1½, dan 2 bit. RXBlock memeriksa kesalahan dalam aliran data masukan, seperti kesalahan overrun, kesalahan frame, kesalahan paritas, dan kesalahan break. Jika kata yang masuk tidak bermasalah, kata tersebut akan ditempatkan di FIFO penerima.
  4. Kontrol Interupsi (Ajukan Pertanyaan)
    Blok Kontrol Interupsi mengirimkan sinyal interupsi kembali ke prosesor, bergantung pada status FIFO dan data yang diterima serta ditransmisikan. Register Identifikasi Interupsi menyediakan level interupsi. Interupsi dikirim untuk buffer transmisi/penerimaan (atau FIFO) yang kosong, kesalahan dalam menerima karakter, atau kondisi lain yang memerlukan perhatian prosesor.
  5. Generator Laju Baud (Ajukan Pertanyaan)
    Blok ini mengambil input PCLK dan membaginya dengan nilai terprogram (dari 1 hingga 216 – 1). Hasilnya dibagi 16 untuk menghasilkan clock transmisi (BAUDOUT).
  6. TXBlock (Ajukan Pertanyaan)
    Blok Transmit menangani transmisi data yang ditulis ke FIFO Transmit. Blok ini menambahkan bit Start, Parity, dan Stop yang diperlukan ke data yang sedang ditransmisikan agar perangkat penerima dapat melakukan penanganan kesalahan dan penerimaan dengan tepat.

Antarmuka Perangkat Lunak (Ajukan Pertanyaan)
Definisi dan pemetaan alamat register Core16550 dijelaskan di bagian ini. Tabel berikut menunjukkan ringkasan register Core16550.

PADDR[4:0]

(Alamat)

Bit Akses Kait Pembagi1

(DLAB)

Nama Simbol Nilai Default (reset) Jumlah Bit Baca/Tulis
00 0 Register Penyangga Penerima RBR XX 8 R
00 0 Daftar Pemegang Pemancar THR XX 8 W
00 1 Kait Pembagi (LSB) Bahasa Indonesia: DLR tahun 01 8 R/W
04 1 Kait Pembagi (MSB) DMR tahun 00 8 R/W
04 0 Interupsi Aktifkan Daftar Bahasa Indonesia tahun 00 8 R/W
08 X Daftar Identifikasi Interupsi IIR C1 jam 8 R
08 X Daftar Kontrol FIFO FCR tahun 01 8 W
0C X Daftar Kontrol Garis LCR tahun 00 8 R/W
10 X Daftar Kontrol Modem MCR tahun 00 8 R/W
14 X Daftar Status Baris LSR tahun 60 8 R
18 X Daftar Status Modem MSR tahun 00 8 R
1C X Daftar Gores SR tahun 00 8 R/W

Penting

DLAB adalah MSB dari Line Control Register (LCR bit 7).

Register Penyangga Penerima (Ajukan Pertanyaan)
Register Penyangga Penerima didefinisikan dalam tabel berikut.
Tabel 1-2. Register Penyangga Penerima (Hanya Baca)—Alamat 0 DLAB 0

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
7..0 RBR XX 0..FFh Bit data yang diterima. Bit 0 adalah LSB, dan merupakan bit pertama yang diterima.

Daftar Penahanan Pemancar (Ajukan Pertanyaan)
Register Penampung Pemancar didefinisikan dalam tabel berikut.
Tabel 1-3. Register Penahan Pemancar—Hanya Tulis

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
7..0 THR XX 0..FFh Untuk mengirimkan bit data. Bit 0 adalah LSB, dan ditransmisikan terlebih dahulu.

Register Kontrol FIFO (Ajukan Pertanyaan)
Register Kontrol FIFO didefinisikan dalam tabel berikut.

Sedikit (7:0) Keadaan Default Negara yang Valid Fungsi
0 1 0, 1 Mengaktifkan FIFO Transceiver (Tx) dan Receiver (Rx). Bit ini harus disetel ke 1 saat bit FCR lainnya ditulis, atau bit tersebut tidak akan diprogram.

0: Dinonaktifkan

1: Diaktifkan

1 0 0, 1 Menghapus semua byte di Rx FIFO dan mereset logika penghitungnya. Register geser tidak dihapus.

0: Dinonaktifkan

1: Diaktifkan

2 0 0, 1 Menghapus semua byte di Tx FIFO dan mereset logika penghitungnya. Register geser tidak dihapus.

0: Dinonaktifkan

1: Diaktifkan

3 0 0, 1 0: DMA transfer tunggal: Transfer yang dilakukan antara siklus bus CPU

1: DMA multi-transfer: Transfer dilakukan hingga Rx FIFO kosong atau Transmission System Operator (TSO) Transmit (XMIT) FIFO terisi. FCR[0] harus diatur ke 1 untuk mengatur FCR[3] ke 1.

4, 5 0 0, 1 Disimpan untuk penggunaan di masa mendatang.
6, 7 0 0, 1 Bit ini digunakan untuk mengatur level pemicu untuk interupsi Rx FIFO. 7 6 Level Pemicu Rx FIFO (byte)

Telepon 0 0 01

Telepon 0 1 04

Telepon 1 0 08

Telepon 1 1 14

Register Kontrol Pembagi (Ajukan Pertanyaan)
Jam Baud Rate (BR) dihasilkan dengan membagi jam referensi masukan (PCLK) dengan 16 dan nilai pembagi.

Tabel berikut mencantumkan contohample nilai pembagi untuk BR yang diinginkan saat menggunakan jam referensi 18.432 MHz.
Tabel 1-5. Kait Pembagi (LS dan MS)

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
7..0 Bahasa Indonesia: DLR tahun 01 01..FFh LSB dari nilai pembagi
7..0 DMR tahun 00 00..FFh MSB dari nilai pembagi

Tabel 1-6. Laju Baud dan Nilai Pembagi untuk Jam Referensi 18.432 MHz

Kecepatan Baud Pembagi Desimal (Nilai Pembagi) Persentase Kesalahan
50 23040 0.0000%
75 15360 0.0000%
110 10473 –0.2865%
134.5 8565 0.0876%
150 7680 0.0000%
300 3840 0.0000%
600 1920 0.0000%
1,200 920 4.3478%
1,800 640 0.0000%
Kecepatan Baud Pembagi Desimal (Nilai Pembagi) Persentase Kesalahan
2,000 576 0.0000%
2,400 480 0.0000%
3,600 320 0.0000%
4,800 240 0.0000%
7,200 160 0.0000%
9,600 120 0.0000%
19,200 60 0.0000%
38,400 30 0.0000%
56,000 21 –2.0408%

Interupsi Aktifkan Daftar (Ajukan Pertanyaan)
Register Interrupt Enable didefinisikan dalam tabel berikut.
Tabel 1-7. Register Pengaktifan Interupsi

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
0 ERBFI 0 0, 1 Mengaktifkan “Data Diterima Tersedia Interupsi” 0: Dinonaktifkan

1: Diaktifkan

1 ETBEI 0 0, 1 Mengaktifkan “Transmitter Holding Register Empty Interrupt” 0: Dinonaktifkan

1: Diaktifkan

2 ELSI 0 0, 1 Mengaktifkan “Receiver Line Status Interrupt” 0: Dinonaktifkan

1: Diaktifkan

3 EDSSI 0 0, 1 Mengaktifkan “Modem Status Interrupt” 0: Dinonaktifkan

1: Diaktifkan

7..4 Disimpan 0 0 Selalu 0

Register Identifikasi Interupsi (Ajukan Pertanyaan)
Register Identifikasi Interupsi tercantum dalam tabel berikut. Tabel 1-8. Register Identifikasi Interupsi

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
3..0 IIR 1h 0..Ch Bit identifikasi interupsi.
5..4 Disimpan 00 00 Selalu 00
7..6 Mode 11 11 11: modus FIFO

Bidang register Identifikasi Interupsi didefinisikan dalam tabel berikut.

Tabel 1-9. Bidang Register Identifikasi Interupsi (IIR)

Nilai IIR[3:0)] Tingkat Prioritas Tipe Interupsi Sumber Interupsi Kontrol Reset Interupsi
0110 Paling tinggi Status jalur penerima Kesalahan overrun, kesalahan paritas, kesalahan framing atau interupsi putus Membaca register Status Garis
0100 Kedua Data yang diterima tersedia Data penerima tersedia Membaca register Buffer Penerima atau FIFO turun di bawah level pemicu
Meja 1–9. Bidang Register Identifikasi Interupsi (IIR) (lanjutan)
Nilai IIR[3:0)] Tingkat Prioritas Tipe Interupsi Sumber Interupsi Kontrol Reset Interupsi
1100 Kedua Indikasi batas waktu karakter Tidak ada karakter yang dibaca dari Rx FIFO selama empat waktu karakter terakhir dan setidaknya ada satu karakter di dalamnya selama waktu ini. Membaca register Buffer Penerima
0010 Ketiga Register Penahan Pemancar kosong Register Penahan Pemancar kosong Membaca IIR atau menulis ke register Penahan Pemancar
0000 Keempat Status modem Siap Dikirim, Set Data Siap, Indikator Dering atau Deteksi Pembawa Data Membaca daftar Status Modern

 Daftar Kontrol Garis (Ajukan Pertanyaan)
Register Kontrol Jalur tercantum dalam tabel berikut. Tabel 1-10. Register Kontrol Jalur

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
1..0 WLS 0 0..3 jam Pilih Panjang Kata 00: 5 bit

01: 6 bit

10: 7 bit

11: 8 bit

2 STB 0 0, 1 Jumlah Bit Berhenti 0: 1 Bit Berhenti

1: 1½ Stop bit ketika WLS = 00 2: Stop bit dalam kasus lain

3 PENA 0 0, 1 Paritas Aktifkan 0: Dinonaktifkan

1: Diaktifkan. Paritas ditambahkan dalam transmisi dan diperiksa dalam penerimaan.

4 Bahasa Inggris: EPS (Eng. EPS) 0 0, 1 Paritas Genap Pilih 0: Paritas ganjil

1 : Paritas genap

5 SP 0 0, 1 Paritas Tongkat 0: Dinonaktifkan

1: Diaktifkan

Berikut adalah rincian paritas, ketika paritas stick diaktifkan: Bit 4..3

11:0 akan dikirim sebagai bit Paritas, dan diperiksa saat menerima.

01:1 akan dikirim sebagai bit Paritas, dan diperiksa saat menerima.

6 SB 0 0, 1 Atur Istirahat 0: Dinonaktifkan

1: Atur break. SOUT dipaksa ke 0. Ini tidak berpengaruh pada logika pemancar. Break dinonaktifkan dengan mengatur bit ke 0.

7 DLAB 0 0, 1 Bit Akses Kait Pembagi

0: Dinonaktifkan. Mode Pengalamatan Normal sedang digunakan.

1: Diaktifkan. Mengaktifkan akses ke register Divisor Latch selama operasi baca atau tulis ke alamat 0 dan 1.

Register Kontrol Modem (Ajukan Pertanyaan)
Register Kontrol Modem tercantum dalam tabel berikut.

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
0 DTR 0 0, 1 Mengontrol keluaran Data Terminal Ready (DTRn). 0: DTRn <= 1

1: DTRn <= 0

1 Bahasa Inggris RTS 0 0, 1 Mengontrol keluaran Permintaan untuk Mengirim (RTSn). 0: RTSn <= 1

1: RTSn <= 0

2 Out1 0 0, 1 Mengontrol sinyal Output1 (OUT1n). 0: OUT1n <= 1

1: KELUAR1n <= 0

3 Out2 0 0, 1 Mengontrol sinyal Output2 (OUT2n). 0: OUT2n <= 1

1: KELUAR2n <= 0

4 Lingkaran 0 0, 1 Loop enable bit 0: Dinonaktifkan

1: Diaktifkan. Berikut ini terjadi dalam mode Loop:

SOUT diatur ke 1. Input SIN, DSRn, CTSn, RIn, dan DCDn terputus. Output dari register Transmitter Shift di-loop kembali ke register Receiver Shift. Output kontrol modem (DTRn, RTSn, OUT1n, dan OUT2n)

terhubung secara internal ke input kontrol modem, dan pin output kontrol modem diatur ke 1. Dalam mode Loopback, data yang dikirim langsung diterima, memungkinkan CPU untuk memeriksa operasi UART. Interupsi beroperasi dalam mode Loop.

7..4 Disimpan 0h 0 Disimpan

Daftar Status Baris (Ajukan Pertanyaan)
Register Status Garis didefinisikan dalam tabel berikut.
Tabel 1-12. Register Status Baris—Hanya Baca

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
0 DR 0 0, 1 Indikator Data Siap

1 ketika satu byte data telah diterima dan disimpan dalam buffer penerima atau FIFO. DR dihapus ke 0 ketika CPU membaca data dari buffer penerima atau FIFO.

1 OE 0 0, 1 Indikator Kesalahan Overrun

Menunjukkan bahwa byte baru diterima sebelum CPU membaca byte tersebut dari buffer penerima, dan byte data sebelumnya dihancurkan. OE dihapus ketika CPU membaca register Status Baris. Jika data terus mengisi FIFO melebihi level pemicu, kesalahan overrun akan terjadi setelah FIFO penuh dan karakter berikutnya telah sepenuhnya dihapus.

diterima di register geser. Karakter di register geser ditimpa, tetapi tidak ditransfer ke FIFO.

2 PE 0 0, 1 Indikator Kesalahan Paritas

Menunjukkan bahwa byte yang diterima memiliki kesalahan paritas. PE dihapus ketika CPU membaca register Status Baris. Kesalahan ini terungkap ke CPU ketika karakter terkait berada di bagian atas FIFO.

3 FE 0 0, 1 Indikator Kesalahan Pembingkaian

Menunjukkan bahwa byte yang diterima tidak memiliki bit Stop yang valid. FE dihapus ketika CPU membaca register Line Status. UART akan mencoba melakukan sinkronisasi ulang setelah terjadi kesalahan framing. Untuk melakukan ini, UART mengasumsikan bahwa kesalahan framing disebabkan oleh bit Start berikutnya, sehinggaampBit Start ini dijalankan dua kali, lalu mulai menerima data. Kesalahan ini akan terdeteksi oleh CPU ketika karakter terkait berada di bagian atas FIFO.

Tabel 1-12. Register Status Baris—Hanya Baca (lanjutan)
Sedikit Nama Keadaan Default Negara yang Valid Fungsi
4 BI 0 0, 1 Indikator Interupsi Putus

Menunjukkan bahwa data yang diterima berada pada 0, lebih lama dari waktu transmisi kata penuh (Bit awal

+ Bit data + Paritas + Bit stop). BI dihapus ketika CPU membaca register Status Baris. Kesalahan ini terungkap ke CPU ketika karakter terkaitnya berada di bagian atas FIFO. Ketika terjadi pemutusan, hanya satu karakter nol yang dimuat ke dalam FIFO.

5 TIGA 1 0, 1 Indikator Transmitter Holding Register Empty (THRE)

Menunjukkan bahwa UART siap mengirimkan byte data baru. THRE menyebabkan interupsi ke CPU ketika bit 1 (ETBEI) dalam register Interrupt Enable bernilai 1. Bit ini diaktifkan ketika TX FIFO kosong. Bit ini dihapus ketika setidaknya satu byte ditulis ke TX FIFO.

6 TEMT 1 0, 1 Indikator Pemancar Kosong

Bit ini ditetapkan ke 1 ketika FIFO pemancar dan register Shift kosong.

7 lebih tajam 0 1 Bit ini diatur ketika terdapat setidaknya satu kesalahan paritas, kesalahan pembingkaian, atau indikasi putus pada FIFO. FIER dihapus ketika CPU membaca LSR jika tidak ada kesalahan berikutnya pada FIFO.

Daftar Status Modem (Ajukan Pertanyaan)
Register Status Modem tercantum dalam tabel berikut.
Tabel 1-13. Register Status Modem—Hanya Baca

Sedikit Nama Keadaan Default Negara yang Valid Fungsi
0 DCTS 0 0, 1 Indikator Delta Clear to Send.

Menunjukkan bahwa masukan CTSn telah berubah status sejak terakhir kali dibaca oleh CPU.

1 DDRR 0 0, 1 Indikator Kesiapan Set Data Delta

Menunjukkan bahwa masukan DSRn telah berubah status sejak terakhir kali dibaca oleh CPU.

2 TERI 0 0, 1 Detektor Indikator Tepi Belakang Cincin. Menunjukkan bahwa input RI telah berubah dari 0 menjadi 1.
3 DDCD 0 0, 1 Indikator Deteksi Pembawa Data Delta Menunjukkan bahwa masukan DCD telah berubah status.

Catatan: Setiap kali bit 0, 1, 2 atau 3 diatur ke 1, interupsi Status Modem dihasilkan.

4 Bahasa Inggris CTS 0 0, 1 Hapus untuk Mengirim

Komplemen masukan CTSn. Ketika bit 4 dari Modem Control Register (MCR) diatur ke 1 (loop), bit ini setara dengan DTR di MCR.

5 DSR 0 0, 1 Kumpulan Data Siap

Komplemen masukan DSR. Ketika bit 4 dari MCR diatur ke 1 (loop), bit ini setara dengan RTSn di MCR.

6 RI 0 0, 1 Indikator Cincin

Komplemen masukan RIn. Ketika bit 4 MCR diatur ke 1 (loop), bit ini setara dengan OUT1 di MCR.

7 DCD 0 0, 1 Deteksi Pembawa Data

Komplemen masukan DCDn. Ketika bit 4 dari MCR diatur ke 1 (loop), bit ini setara dengan OUT2 di MCR.

Daftar Gores (Ajukan Pertanyaan)
Register Scratch didefinisikan dalam tabel berikut.

Sedikit Nama Keadaan Default Fungsi
7..0 SCR tahun 00 Register baca/tulis untuk CPU. Tidak berpengaruh pada operasi UART.

Alur Alat (Ajukan Pertanyaan)
Bagian ini menyediakan rincian tentang alur alat.

 SmartDesign (Ajukan Pertanyaan)
Core16550 tersedia untuk diunduh di lingkungan desain penerapan IP SmartDesign. Core dikonfigurasi menggunakan GUI konfigurasi dalam SmartDesign, lihat gambar berikut.
Untuk informasi tentang cara menggunakan SmartDesign untuk membuat instance, mengonfigurasi, menghubungkan, dan menghasilkan inti, lihat Panduan Pengguna SmartDesign.

Gambar 2-1. Konfigurasi Core16550 

MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (5)
Alur Simulasi (Ajukan Pertanyaan)
Bangku uji pengguna untuk Core16550 disertakan dalam semua rilis.
Untuk menjalankan simulasi, pilih opsi Alur User Testbench di SmartDesign dan klik Hasilkan Desain di bawah menu SmartDesign. User testbench dipilih melalui GUI Konfigurasi Core Testbench.
Ketika SmartDesign menghasilkan proyek Libero SoC, ia menginstal testbench pengguna files.
Untuk menjalankan uji coba pengguna, atur root desain ke instansiasi Core16550 di panel Hirarki Desain SoC Libero dan klik ikon Simulasi di jendela Alur Desain SoC. Ini akan memanggil ModelSim® dan menjalankan simulasi secara otomatis.

Sintesis di Libero SoC (Ajukan Pertanyaan)
Klik ikon Sintesis di Libero SoC. Jendela Sintesis akan muncul. Proyek Synplify®. Atur Synplify untuk menggunakan standar Verilog 2001 jika Verilog sedang digunakan. Untuk menjalankan Sintesis, klik ikon Jalankan.

Place-and-Rute di Libero SoC (Ajukan Pertanyaan)
Untuk mengatur rute desain dengan tepat dan menjalankan Sintesis, klik ikon Tata Letak di Libero SoC dan panggil Designer. Core16550 tidak memerlukan pengaturan lokasi dan rute khusus.

Core16550 (Ajukan Pertanyaan)

Bagian ini menyediakan informasi tentang parameter yang digunakan dalam inti ini.

Parameter (Ajukan Pertanyaan)
Core16550 tidak mendukung parameter tingkat atas apa pun.

Antarmuka Inti (Ajukan Pertanyaan)

Bagian ini menyediakan ringkasan masukan dan keluaran.

Deskripsi Sinyal I/O (Ajukan Pertanyaan)
Berikut ini daftar definisi I/O Core16550.

Nama Jenis Polaritas Keterangan
PRESET Masukan Rendah Atur ulang master
PCLK Masukan Jam induk

PCLK dibagi dengan nilai register Pembagi. Hasilnya kemudian dibagi 16 untuk menghasilkan laju baud. Sinyal yang dihasilkan adalah sinyal BAUDOUT. Tepi naik pin ini digunakan untuk memberi strobe pada semua sinyal input dan output.

TULIS Masukan Tinggi APB mengaktifkan penulisan/pembacaan, aktif-tinggi.

Jika TINGGI, data ditulis ke lokasi alamat yang ditentukan. Jika RENDAH, data dibaca dari lokasi alamat yang ditentukan.

PADDR[4:0] Masukan Alamat APB

Bus ini menyediakan tautan bagi CPU ke alamat register Core16550 untuk dibaca atau ditulis.

PSEL Masukan Tinggi APB pilih

Bila ini TINGGI bersama dengan PENABLE, pembacaan dan penulisan ke Core16550 diaktifkan.

PWDATA[7:0] Masukan Bus masukan data

Data pada bus ini akan ditulis ke register yang dituju selama siklus tulis.

PENABEL Masukan Tinggi APB mengaktifkan

Bila ini TINGGI bersama dengan PSEL, pembacaan dan penulisan ke Core16550 diaktifkan.

PRDATA[7:0] Keluaran Bus keluaran data

Bus ini menyimpan nilai register yang dituju selama siklus baca.

CTSn Masukan Rendah Hapus untuk Mengirim

Sinyal aktif-rendah ini merupakan input yang menunjukkan kapan perangkat yang terpasang (modem) siap menerima data. Core16550 meneruskan informasi ini ke CPU melalui register Status Modem. Register ini juga menunjukkan bahwa jika sinyal CTSn telah berubah sejak terakhir kali, register telah terbaca.

DSRn Masukan Rendah Kumpulan Data Siap

Sinyal aktif-rendah ini merupakan input yang menunjukkan kapan perangkat yang terpasang (modem) siap untuk terhubung dengan Core16550. Core16550 meneruskan informasi ini ke CPU melalui register Status Modem. Register ini juga menunjukkan apakah sinyal DSRn telah berubah sejak terakhir kali register dibaca.

DCDn Masukan Rendah Deteksi Pembawa Data

Sinyal aktif-rendah ini merupakan input yang menunjukkan kapan perangkat yang terhubung (modem) telah mendeteksi pembawa. Core16550 meneruskan informasi ini ke CPU melalui register Status Modem. Register ini juga menunjukkan apakah sinyal DCDn telah berubah sejak terakhir kali register dibaca.

DOSA Masukan Data Masukan Serial

Data ini ditransmisikan ke Core16550 dan disinkronkan dengan pin input PCLK.

RIn Masukan Rendah Indikator Cincin

Sinyal aktif-rendah ini merupakan masukan yang menunjukkan kapan perangkat yang terpasang (modem) telah mendeteksi sinyal dering pada saluran telepon. Core16550 meneruskan informasi ini ke CPU melalui register Status Modem. Register ini juga menunjukkan kapan tepi belakang RIn terdeteksi.

SELATAN Keluaran Data keluaran serial

Data ini ditransmisikan dari Core16550 dan disinkronkan dengan pin keluaran BAUDOUT.

RTS Keluaran Rendah Permintaan untuk Mengirim

Sinyal keluaran aktif-rendah ini digunakan untuk memberi tahu perangkat yang terpasang (modem) bahwa Core16550 siap mengirim data. Sinyal ini diprogram oleh CPU melalui register Kontrol Modem.

Tabel 4-1. Ringkasan Sinyal I/O (lanjutan)
Nama Jenis Polaritas Keterangan
DTRn Keluaran Rendah Terminal Data Siap

Sinyal keluaran aktif-rendah ini memberi tahu perangkat yang terhubung (modem) bahwa Core16550 siap untuk membangun tautan komunikasi. Sinyal ini diprogram oleh CPU melalui register Kontrol Modem.

KELUAR1n Keluaran Rendah Keluaran 1

Output aktif-rendah ini merupakan sinyal yang ditentukan pengguna. CPU memprogram sinyal ini melalui register Kontrol Modem dan mengaturnya ke nilai yang berlawanan.

KELUAR2n Keluaran Rendah Keluaran 2

Sinyal keluaran aktif-rendah ini merupakan sinyal yang ditentukan pengguna. Sinyal ini diprogram oleh CPU melalui register Kontrol Modem dan diatur ke nilai yang berlawanan. diprogram.

INFORMASI Keluaran Tinggi Interupsi Tertunda

Sinyal keluaran aktif-tinggi ini adalah sinyal keluaran interupsi dari Core16550. Sinyal ini diprogram untuk aktif pada peristiwa tertentu, memberi tahu CPU bahwa peristiwa tersebut telah terjadi (untuk detail selengkapnya, lihat Register Identifikasi Interupsi). CPU kemudian mengambil tindakan yang sesuai.

BAUDOUTn Keluaran Rendah Baud keluar

Ini adalah sinyal jam keluaran yang berasal dari jam masukan untuk menyinkronkan aliran data keluaran dari SOUT.

RXRDYN Keluaran Rendah Penerima siap menerima transmisi.

CPU ditunjukkan oleh sinyal keluaran aktif-rendah ini bahwa bagian penerima Core16550 tersedia untuk membaca data.

TXRDYN Keluaran Rendah Pemancar siap mengirimkan data.

Sinyal aktif-rendah ini menunjukkan kepada CPU bahwa bagian pemancar Core16550 memiliki ruang untuk menulis data untuk transmisi.

rxfifo_kosong Keluaran Tinggi Terima FIFO kosong.

Sinyal ini menjadi TINGGI ketika FIFO penerima kosong.

rxfifo_penuh Keluaran Tinggi Terima FIFO penuh.

Sinyal ini menjadi Tinggi ketika FIFO penerima penuh.

Diagram Pengaturan Waktu (Ajukan Pertanyaan)
Bagian ini menyediakan diagram waktu inti ini.

 Siklus Penulisan Data dan Siklus Pembacaan Data (Ajukan Pertanyaan)
Gambar 5-1 dan Gambar 5-2 menggambarkan hubungan waktu siklus tulis dan siklus baca relatif terhadap jam sistem APB, PCLK.

Daftar Tulis (Ajukan Pertanyaan)
Gambar berikut menunjukkan sinyal Address, Select, dan Enable terkunci dan harus valid sebelum mencapai tepi naik PCLK. Penulisan terjadi di tepi naik sinyal PCLK.

MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (6)Daftar Baca (Ajukan Pertanyaan)
Gambar berikut menunjukkan sinyal Address, Select, dan Enable terkunci dan harus valid sebelum tepi naik PCLK. Pembacaan terjadi pada tepi naik sinyal PCLK. MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (7)Untuk detail lebih lanjut tentang deskripsi dan bentuk gelombang waktu, lihat spesifikasi AMBA.

Sinkronisasi Penerima (Ajukan Pertanyaan)
Ketika penerima mendeteksi status Rendah dalam aliran data masuk, penerima akan melakukan sinkronisasi. Setelah tepi awal, UART menunggu 1.5 × (panjang bit normal). Hal ini menyebabkan setiap bit berikutnya dibaca di tengah lebarnya. Gambar berikut menggambarkan proses sinkronisasi ini.

Gambar 5-3. Sinkronisasi Penerima

MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (8)Operasi Testbench (Ajukan Pertanyaan)
Core16550 hanya dilengkapi satu testbench: Verilog User Testbench. Testbench ini mudah digunakan dan ditulis dalam bahasa Verilog. Testbench ini ditujukan untuk modifikasi oleh pengguna.

Uji Coba Pengguna (Ajukan Pertanyaan)
Gambar berikut menunjukkan diagram blok dari example desain pengguna dan bangku uji.
Gambar 6-1. Uji Coba Pengguna Core16550

MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (1)Bangku uji pengguna mencakup contoh sederhanaampdesain yang berfungsi sebagai referensi bagi pengguna yang ingin menerapkan desain mereka sendiri.
Bangku uji untuk mantanampDesain pengguna mengimplementasikan sebagian dari fungsionalitas yang diuji dalam uji verifikasi, untuk detail lebih lanjut, lihat Uji Pengguna. Secara konseptual, seperti yang ditunjukkan pada Gambar 6-1, instansiasi Core16550 disimulasikan menggunakan mikrokontroler perilaku dan koneksi loopback yang disimulasikan. Misalnya,ample, user testbench mendemonstrasikan pengiriman dan penerimaan oleh unit Core16550 yang sama, sehingga Anda dapat memperoleh pemahaman dasar tentang cara menggunakan inti ini.
Uji coba pengguna mendemonstrasikan pengaturan dasar, operasi transmisi, dan penerimaan Core16550. Uji coba pengguna melakukan langkah-langkah berikut:

  1. Menulis ke register kontrol.
  2. Periksa data yang diterima.
  3. Nyalakan transmisi dan terima.
  4. Membaca register kontrol.
  5. Mengirim dan menerima satu byte.

Pemanfaatan dan Performa Perangkat (Ajukan Pertanyaan)

Tabel berikut mencantumkan data pemanfaatan dan performa Core16550. Tabel 7-1. Pemanfaatan dan Performa Core16550 PolarFire dan PolarFire SoC

Detail Perangkat Sumber daya RAM
Keluarga Perangkat 4LUT DFF Elemen Logika μSRAM
PolarFire® MPF100T-FCSG325I 752 284 753 2
PolarFire®SoC MPFS250TS- FCSG536I 716 284 720 2
RTG4™ RT4G150- 1CG1657M 871 351 874 2
IGLOO® 2 M2GL050TFB GA896STD 754 271 1021 2
SmartFusion® 2 M2S050TFBG A896STD 754 271 1021 2
SmartFusion® A2F500M3G- Standar 1163 243 1406 2
IGLOO®/IGLOOE AGL600- STD/AGLE600 V2 1010 237 1247 2
Fusi AFS600-STD 1010 237 1247 2
ProASIC® 3/E A3P600-STD 1010 237 1247 2
ProASIC Plus® APA075-STD 1209 233 1442 2
RTAX-S RTAX250S- STD 608 229 837 2
Axcelerator® AX125-STD 608 229 837 2

Masalah yang Terselesaikan (Ajukan Pertanyaan)
Tabel berikut mencantumkan semua masalah yang teratasi untuk berbagai rilis Core16550.
Tabel 8-1. Masalah yang Terselesaikan

Versi Perubahan
Bahasa Inggris v3.4 Core16550 menggunakan Kata Kunci Verilog Sistem "break" sebagai nama register yang menyebabkan masalah kesalahan sintaksis. Masalah ini telah diperbaiki dengan mengganti kata kunci tersebut dengan nama lain.
Menambahkan dukungan keluarga PolarFire®

Riwayat Revisi (Ajukan Pertanyaan)

Riwayat revisi menjelaskan perubahan yang diterapkan dalam dokumen. Perubahan dicantumkan berdasarkan revisi, dimulai dari publikasi terkini.

MICROCHIP -Core16550 -Penerima-Pemancar-Asinkron-Universal (2)

Dukungan FPGA Microchip

Grup produk Microchip FPGA mendukung produknya dengan berbagai layanan dukungan, termasuk Layanan Pelanggan, Pusat Dukungan Teknis Pelanggan, dan websitus, dan kantor penjualan di seluruh dunia. Pelanggan disarankan untuk mengunjungi sumber daya daring Microchip sebelum menghubungi dukungan karena kemungkinan besar pertanyaan mereka sudah terjawab.
Hubungi Pusat Dukungan Teknis melalui websitus di www.microchip.com/dukungan Sebutkan nomor Bagian Perangkat FPGA, pilih kategori kasus yang sesuai, dan unggah desain files sambil membuat kasus dukungan teknis.
Hubungi Layanan Pelanggan untuk dukungan produk non-teknis, seperti harga produk, peningkatan produk, informasi pembaruan, status pesanan, dan otorisasi.

  • Dari Amerika Utara, hubungi 800.262.1060
  • Dari seluruh dunia, hubungi 650.318.4460
  • Faks, dari mana saja di dunia, 650.318.8044

Informasi Mikrochip

Merek Dagang
Nama dan logo “Microchip”, logo “M”, dan nama, logo, serta merek lain adalah merek dagang terdaftar dan tidak terdaftar milik Microchip Technology Incorporated atau afiliasi dan/atau anak perusahaannya di Amerika Serikat dan/atau negara lain (“Merek Dagang Microchip”). Informasi mengenai Merek Dagang Microchip dapat ditemukan di https://www.microchip.com/en-us/about/legal-information/microchip-trademarks
Bahasa Indonesia:

Pemberitahuan Hukum

  • Publikasi ini dan informasi di dalamnya hanya dapat digunakan dengan produk Microchip, termasuk untuk merancang, menguji, dan mengintegrasikan produk Microchip dengan aplikasi Anda. Penggunaan informasi ini
    dengan cara lain apa pun melanggar ketentuan ini. Informasi mengenai aplikasi perangkat disediakan hanya untuk kenyamanan Anda dan dapat digantikan oleh pembaruan. Anda bertanggung jawab untuk memastikan bahwa aplikasi Anda memenuhi spesifikasi Anda. Hubungi kantor penjualan Microchip setempat Anda untuk mendapatkan dukungan tambahan atau, dapatkan dukungan tambahan di www.microchip.com/en-us/support/design-help/client-support-services
  • INFORMASI INI DISEDIAKAN OLEH MICROCHIP “SEBAGAIMANA ADANYA”. MICROCHIP TIDAK MEMBERIKAN PERNYATAAN ATAU JAMINAN APAPUN BAIK SECARA TERSURAT MAUPUN TERSIRAT, TERTULIS MAUPUN LISAN, BERDASARKAN HUKUM ATAU LAINNYA, YANG TERKAIT DENGAN INFORMASI TERMASUK NAMUN TIDAK TERBATAS PADA JAMINAN TERSIRAT TENTANG KETIDAKPELANGGARAN, KEMAMPUAN UNTUK DIPERDAGANGKAN, DAN KESESUAIAN UNTUK TUJUAN TERTENTU, ATAU JAMINAN YANG TERKAIT DENGAN KONDISI, KUALITAS, ATAU KINERJANYA.
  • DALAM KEADAAN APA PUN, MICROCHIP TIDAK AKAN BERTANGGUNG JAWAB ATAS KERUGIAN, KERUSAKAN, BIAYA, ATAU PENGELUARAN TIDAK LANGSUNG, KHUSUS, HUKUMAN, INSIDENTAL, ATAU KONSEKUENSIAL DALAM BENTUK APA PUN YANG TERKAIT DENGAN INFORMASI ATAU PENGGUNAANNYA, APA PUN PENYEBABNYA, BAHKAN JIKA MICROCHIP TELAH DIBERITAHUKAN TENTANG KEMUNGKINAN TERSEBUT ATAU KERUSAKAN TERSEBUT DAPAT DIPERKIRAKAN. SEJAUH YANG DIIZINKAN OLEH HUKUM, TOTAL TANGGUNG JAWAB MICROCHIP ATAS SEMUA KLAIM DALAM BENTUK APA PUN YANG TERKAIT DENGAN INFORMASI ATAU PENGGUNAANNYA TIDAK AKAN MELEBIHI JUMLAH BIAYA, JIKA ADA, YANG TELAH ANDA BAYARKAN SECARA LANGSUNG KEPADA MICROCHIP UNTUK INFORMASI TERSEBUT.
  • Penggunaan perangkat Microchip dalam aplikasi pendukung kehidupan dan/atau keselamatan sepenuhnya menjadi risiko pembeli, dan pembeli setuju untuk membela, mengganti rugi, dan membebaskan Microchip dari segala kerusakan, klaim, tuntutan, atau biaya yang timbul akibat penggunaan tersebut. Tidak ada lisensi yang diberikan, secara tersirat atau sebaliknya, berdasarkan hak kekayaan intelektual Microchip kecuali dinyatakan sebaliknya.

Fitur Perlindungan Kode Perangkat Microchip
Perhatikan rincian berikut mengenai fitur perlindungan kode pada produk Microchip:

  • Produk mikrochip memenuhi spesifikasi yang tercantum dalam Lembar Data Mikrochip masing-masing.
  • Microchip yakin bahwa rangkaian produknya aman jika digunakan sesuai tujuan, sesuai spesifikasi pengoperasian, dan dalam kondisi normal.
  • Microchip menghargai dan secara agresif melindungi hak kekayaan intelektualnya. Upaya untuk melanggar fitur perlindungan kode produk Microchip sangat dilarang dan dapat melanggar Digital Millennium Copyright Act.
  • Baik Microchip maupun produsen semikonduktor lainnya tidak dapat menjamin keamanan kodenya. Perlindungan kode tidak berarti bahwa kami menjamin produk tersebut "tidak dapat dipecahkan". Perlindungan kode terus berkembang. Microchip berkomitmen untuk terus meningkatkan fitur perlindungan kode pada produk kami.

Panduan Pengguna
© 2025 Microchip Technology Inc. dan anak perusahaannya

Dokumen / Sumber Daya

Penerima Pemancar Asinkron Universal MICROCHIP Core16550 [Bahasa Indonesia:] Panduan Pengguna
v3.4, v3.3, Pemancar Penerima Asinkron Universal Core16550, Core16550, Pemancar Penerima Asinkron Universal, Pemancar Penerima Asinkron, Pemancar Penerima, Pemancar

Referensi

Tinggalkan komentar

Alamat email Anda tidak akan dipublikasikan. Bidang yang wajib diisi ditandai *