Bab7 Interface Memori

download Bab7 Interface Memori

of 51

Transcript of Bab7 Interface Memori

  • 5/14/2018 Bab7 Interface Memori

    1/51

    BAB 7Interface Memori

    PENDAHULUANBaik yang sederhana maupun yang kompleks, setiap sistem yang berdasarkanpada mikroprosesor mempunyai memori. Dalam hal ini, 8086/8088 tidak berbedadengan mikroprosesor lain.Hampir semua sistem terdiri dari dua jenis memori pokok, read-only memory

    (ROM), dan random access memory (RAM) atau read/write memory. Bab iniakan menjelaskan bagaimana melakukan interface kedua jenis memori tersebutke 8086 dan 8088.

    TUJUANSetelah menyelesaikan bab ini, kita diharapkan akan dapat :1. Membaca sandi/decode alamat memori dan menggunakan output dari deco-

    der untuk memilih berbagai komponen memori.2. Menjelaskan bagaimana melakukan interface (menghubungkan) RAM dan

    ROM ke mikroprosesor.3. Menjelaskan bagaimana kesamaan dapat mendeteksi kesalahan.4. Menginterface memori ke mikroprosesor 8088.5. Menginterface memori ke mikroprosesor 8086.6. Menjelaskan operasi dari pengontrol RAM dinamis.7. Menginterface RAM dinamis ke 8086 dan 8088.

    225

  • 5/14/2018 Bab7 Interface Memori

    2/51

    226 Pengantar Mikroprosesor

    7-1 PERLENGKAPAN MEMORISangat penting bagi kita untuk memahami secara secara menyeluruh terhadapoperasi dari komponen memori sebelum berusaha menginterface memori kemikroprosesor. Dalam bagian ini, kita akan menjelaskan fungsi dari tiga jenismemori yang umum; read-only memori (ROM), static random access memory(SRAM), dan dynamic random access memory (DRAM).

    Hubungan MemoriHubungan tentang semua perelengkapan memori yang bersifat umum adalahinput alamat, output data dan atau input, beberapa jenis pemilihan input, danminimal satu input kontrol yang digunakan untuk membaca atau menuliskan data.Lihat Gambar 7-1 untuk piranti pseudo ROM dan RAM.Hubungan Alamat. Seluruh piranti memori mempunyai set input alamat yangdigunakan untuk memilih lokasi memori dalam piranti memori. Bilangan alamatpin yang ditemukan pada piranti memori ditentukan oleh bilangan lokasi memoriyang ditemukan di dalamnya.

    Sekarang ini, piranti memori yang lebih umum mempunyai antara lK (1,024)dan 1M lokasi rnemori, dengan piranti lokasi memori 4M pada horizon. Pirantimemori lK mempunyai 10 pin alamat; oleh karena itu, 10 input alamat diperlukanuntuk pengeluaran tunggal pada salah satu dari lokasi memori 1,024-nya. Diper-lukan 10-bit bilangan binary (kombinasi 1,024 yang berbeda) untuk memilihlokasi tunggal pada piranti 1,024-lokasi. Jika piranti memori mempunyai 11hubungan alamat, maka akan mempunyai lokasi memori internal 2,048 (2K).Bilangan lokasi memori dapat diperhitungkan dari bilangan pin alamat. Misalnya,piranti memori 4K mempunyai hubungan alamat 12, maka piranti 8K akanmempunyai 13, dan seterusnya.Hubungan Data. Seluruh piranti memori mempunyai set output data atau inputdan output. Piranti yang diilustrasikan dalam Gambar 7-1 mempunyai set hu-bungan input/output (1/0) yang umum.Hubungan data merupakan point dimana data dimasukkan untuk disimpanatau disaring untuk dibaca. Dalam piranti memori yang sederhana ini, ada delapan

    hubungan 110, yang berarti bahwa piranti memori dapat menyimpan 8 bit datadalam setiap lokasi memorinya. Piranti dengan lebar 8-bit sering disebut dengan

  • 5/14/2018 Bab7 Interface Memori

    3/51

    Interface Memori 227

    All 00A, 0, Output

    Addrev, A, 01 orconnections Input/outputconnection

    A.... O~

    WE WriteCS OE

    GAMBAR 7-1 Komponen pseudo-memori yang mengilustrasikan address, data, dan koneksikontrol.

    byte-wide memory. Tidak semua piranti memori mempunyai lebar 8-bit, namundemikian, beberapa diantaranya adalah 4-bit dan bahkan 1 bit lebarnya.Katalog yang ada dalam daftar piranti memori sering mengacu ke lokasi

    memori kali bit per lokasi. Misalnya, piranti memori dengan lokasi memori 1Kdan 8 bit dalam setiap lokasi diberi daftar dengan 1K x 8 oleh pembuatnya. 16K x1 adalah piranti memori dengan lokasi memori 16K I-bit. Piranti tersebut jugasering diklasifikasikan menurut total kapasitas bit. Misalnya, 1K x 8-bit pirantimemori, kadang diberi daftar/terdafar sebagai piranti memori 8-K atau 64K x 4memori diberi daftar sebagai piranti 256K.Hubungan PemilihaniSeleksi. Setiap piranti memori mempunyai input - ka-dang lebih dari satu - yang memilih atau memungkinkan piranti memori. Inputsemacam ini paling sering disebut chip seelect (CS) atau input clip enable (CE).Memori RAM pada umumnya mempunyai minimal satu input CS, dan ROMminimal satu CEo Jika input CE atau CS aktif (logika 0 dalam hal ini), pirantimemori tidak dapat dibaca atau dituliskan karena dimatikan. Jika memori lebihdari satu hubungan CS ada, maka seluruhnya harus diaktitkan untuk membacadan menuliskan data.

  • 5/14/2018 Bab7 Interface Memori

    4/51

    228 Pengantar Mikroprosesor

    Hubungan Kontrol. Seluruh piranti memori mempunyai beberapa form/bentukkontrol atau input kontrol. ROM biasanya hanya mempunyai input kontrol, se-dangkan RAM sering mempunyai satu atau dua input kontrol.Input kontrol yang paling sering ditemukan pada ROM hubungan adalah

    output enable (OE) yang memungkinkan data untuk keluar dari pin data outputdari ROM. Jika OE dan input pilihan keduanya aktif, maka output dapat dapatdimungkinkan/enabled; jika OE tidak aktif, maka output tidak mungkin padakeadaan dengan impedansi tinggi. Input OE secara aktual bisa memungkinkandan bisa tidak memungkinkan set buffer tiga-keadaan yang diletakkan dalampiranti memori.Piranti RAM memori dapat mempunyai satu maupun dua input kontrol. Jika

    ada satu input kontrol, maka disebut dengan RlW. Pin ini akan memilih readoperation atau write operation hanya jika piranti dipilih dengan input pilihan(CS). Jika RAM mempunyai dua input kontrol, maka biasanya diberi label de-ngan WE dan OE. Disini WE harus aktif untuk menunjukkan memori tulis, danOE harus aktif untuk menunjukkan operasi memori baca. Jika dua kontrol ini(WE dan OE) ada, keduanya tidak pernah aktif pada waktu yang bersamaan. Jikakedua input kontrol tidak aktif (logika Is), maka data tidak dituliskan maupundibaca dan hubungan data ada pada situasi nyataan dengan impedansi tinggi.

    ROM MemoriRead-only memori (ROM) secara permanen akan menyimpan program dan datayang residen pada sistem dan tidak berubah ketika catu daya diputuskan.ROM telah ada dalam beberapa bentuk sekarang ini. ROM ini dibeli dalam

    kuantitas massa dari pembuat dan diprogram selama pembuatan di pabrik.EPROM (erasable programmable read-only memory) lebih umum digunakanjikasoftware harus sering diubah atau jika terlalu dibatasi biIangan yang diperlukanuntuk membuat ROM ekonomis.EPROM diprogram dalam bagian pada peralatan yang disebut EPROM pro-

    grammer. Program ini dapat dihapus jika diperlihatkan ke sinar ultraviolet denganintensitas tinggi untuk kira-kira 30 menit atau kurang, tergantung pada jenisEPROM. Piranti PROM memori juga ada, tetapi piranti ini tidak umum sepertisekarang. PROM (programmable read-only memory) juga dapat diprogram da-lam bidang dengan membakar timah terbuka Nichrome atau sikring oksida sili-kon, tetapi sekali diprogram, maka tidak dapat dihapus.

  • 5/14/2018 Bab7 Interface Memori

    5/51

    Interface Memori 229

    Gambar 7-2 mengilustrasikan EPROM 2716. Piranti ini berisi 11 input alamatdan 8 output data. 2716 adalah 2K x 8 piranti memori. Seri 27XXX dari EPROMberisi bagian bilangan sebagai berikut: 2704 (512 x 8), 2708 (lK x 8), 2716 (2Kx 8), 2732 (4K x 8), 2764 (8K x 8), 27128 (16K x 8), 27256 (32K x 8), dan 27512(64K x 8). Setiap bagian tersebut berisi pin alamat, 8 hubungan data, satu inputpilihan chip (CE) dan pin yang memungkinkanoutput (OE).

    Gambar 7-3 mengilustrasikan diagram timing untuk EPROM 2716. Datahanya muncul pada hubungan output setelah logika 0 ditempatkan pada keduahubungan pin CE dan OE. Jika CE dan OE keduanya bukan logika 0, makahubungan output data tetap pada impedansi yang tinggi atau (off states).

    Suatu bagian yang penting dari informasi yang disediakan oleh diagram ti-ming dan sheet data adalah memory access time - waktu yang diperlukanmemori untuk membaca informasi. Seperti diilustrasikan dalam Gambar 7-3,memori access time (T a c e ) diukur dari kemunculan alamat pada input alamathingga kemunculan data pada hubungan output. Hal ini berdasarkan pada asumsibahwa input CE rendah pada waktu yang sarna dimana input alamat menjadistabil. Juga, OE harus merupakan logika 0 untuk hubungan output agar menjadiaktif. Kecepatan pokok dari EPROM ini adalah 450 ns. (Ingat kembali bahwa8086/8088 dioperasikan dengan clock 5-MHz yang memungkinkan memori 460ns pada akses data). Tipe komponen memori semacam ini memerlukan pernyata-an menunggu untuk mengoperasikan mikroprosesor 8086/8088 oleh karena wak-tu akses yang agak lama. Jika pernyataan menunggu tidak diinginkan, maka versikecepatan yang lebih tinggi dapat diperoleh dengan memberikan biaya tambahan.

    Statik RAM (SRAM) MemoriPiranti statik RAM memori akan menahan data sepanjang catu daya DC diterap-kan. Oleh karena tidak ada aksi khusus yang diperlukan untuk menahan data yangdisimpan, maka piranti in disebut dengan static memory. Perbedaan pokok antaraROM dan RAM adalah bahwa RAM dituliskan ke dalam operasi yang normal,sedangkan ROM diprogram diluar komputer. SRAM akan menyimpan data tem-porer dan digunakan ketika ukuran read/write memori relatif kecil. Sekarang ini,memori yang kecil adalah dibawah 256K byte.

    Gambar 7-4 mengilustrasikan SRAM 4016, yang merupakan 2K x 8 read writememori. Piranti mempunyai 11 input alamat dan 8 pin input/output data. Pi-noutlpenyebaran dari 4016 adalah sarna dengan 2716 kecuali 'untuk pin program,

  • 5/14/2018 Bab7 Interface Memori

    6/51

    230 Pengantar Mikroprosesor

    MODE SELECTIONPO/PGM

    1181C ! v". Vee OUTPUTS,(201 (211 (241, (91',1317) \IN CONFIGURATION

    veeA6 AOASA4 v ..csA2

    07O.

    1 Desetect Do, . . t CarePower Down ; Don t Care"5 "5 H. gI 'I Z

    : Program ventv DOUT Program

    Program InhIbIt

    BLOCK DIAGRAMVeco----.GNOo--

    o sPD/PGM

    YGATING

    PIN NAMESAo-Al0 ADDRESSESPD/PGM POWER DOWN/PROGRAMCS CHIP SELECT00-07 OUTPUTS

    . . _ A 1 0 jAQDRESSINPUTS 16,314-917CELL MATRIX

    GAMBAR 7-2 Pinout dari 2716, 2K X 8 EPROM.

    yang diubah ke write pin atau 4016. EPROM dan RAM yang dapat diubah inisangat berguna untuk pengembangan sistem dan debugging. Software pada awal-nya dapat dipanggil ke dalam RAM 4016 untuk debugging dan modifikasi, dansekali sistem berfungsi dengan benar, program dapat disimpan pada EPROM dandimasukkan ke dalam sistein.Input kedua dari RAM ini adalah sangat sedikit berbeda dengan yang ditunjuk-

    kan awal tadi. Pin OE diberi label dengan G, CS pin S, dan WE pin W. Meskipuntujuan yang dialternatitkan, namun demikian, fungsi pin kontrol tersebut padapokoknya sarna dengan yang dibicarakan dalam bagian sebelumnya. Pembuat Ianakan membuat SRAM yang populer ini di bawah bilangan bagian 2016 dan 6116.Gambar 7-5 menyatakan diagram timing untuk SRAM 4016. Ketika read

    cycle timing muncul, waktu akses adalah t, (A). Pada versi yang paling akhir dari4016 waktunya adalah 250 ns, yang cukup cepat untuk menghubungkan 8088atau 8086 yang dioperasikan pada 5 MHz tanpa menunggu pernyataan. Sekalilagi, akan sangat penting untuk mengingat bahwa waktu akses harus dicek untukmenentukan ketepatan komponen memori dengan mikroprosesor.

  • 5/14/2018 Bab7 Interface Memori

    7/51

    Interface Memori 231

    A.C. CharacteristicsTA OC to 70C. Vcc[!1 = +5V 5%. Vpp[21 = vee 0.6V[31

    LimitsSymbol Parameter Min. Typ.l41 Max. Unit Test Conditions

    tACC! Address to Output Delay 250 450 ns PD/PGM = CS = V1LtAcC2 PD/PGM to Output Delay 280 450 ns CS= V1Lteo Chip Select to Output Delay 120 ns PD/PGM = V1LtPF PDIPGM to Output Float 0 100 ns B=V1LtOF Chip Deselect to Output Float 0 100 ns PD/PGM = V1Lt o H Address to Output Hold 0 ns PD/PGM = CS = V1LCapacitancel5] TA = 25C. f = 1 MHz A.C. Test Conditions:Symbol Parameter Typ. Max. Unit ConditionsCIN Input Capacitance 4 6 pF VIN = OVCoUT Output Capacitance 8 12 pF VOUT = OVNOTE. Pleaserefer to page 2 for notes.

    Output Load: 1 TTL gate and CL = 100 pFInput Rise and Fall Times:

  • 5/14/2018 Bab7 Interface Memori

    8/51

    232 Pengantar Mikroprosesor

    TMS4016 . NL PACKAGE(T OP V IEW .

    A7 V c eAS A8A5 A9A4 ViA3 GA2 6 19 Al0Al 7 18 5AO S 17 DOS

    001 9 16 D07002 10 15 006

    DOSV s s 004

    PIN NOMENCLATURE IAO - A10001 ._DaBGSV e cY s sW

    Addresses IData InlData Out 'Output EnableChip Select+5Y SupplyGroundwnte Enable

    GAMBAR 7-4 Pinout TMS 4016, 2K X 8 statik RAM (SRAM).

    Dinamlk RAM (DRAM) MemoriTentang statik RAM paling besar yang ada sekarang ini adalah 32K x 8. DinamikRAM, sebaliknya, ada dalam beberapa ukuran yang lebih besar, hingga 4M x 1.Dalam semua hal, DRAM pada pokoknya sarna dengan SRAM kecuali bahwaDRAM menahan data untuk hanya kira-kira 2 - 4 ms pada kapasitor yangterintegrasi. Setelah 2 - 4 ms, isi dari DRAM harus secara lengkap dituliskankembali atau disegarkan kembali karen a kapasitor kehilangan arab.Dari pada menuntut tugas yang paling tidak mungkin untuk melakukan dari

    pembacaan isi setiap lokasi memori dengan program dan kemudian menuliskan-nya kembali, maka pabrik secara internal membuat DRAM sehingga, dalam versi64K x I, seluruh isi memori dapat disegarkan kembali dengan 256 pembacaandalam intervaI4-ms. Penyegaran kembalijuga akan terjadi selama penulisan danselama cycle/putaran penyegaran khusus. Informasi yang lebih banyak atas pe-nyegaran kembali DRAM dijelaskan dalam Bagian 7-5.

  • 5/14/2018 Bab7 Interface Memori

    9/51

    Interface Memori 233

    electrical characteristics over recommended operating free-air temperatura range (unless otherwise noted)

    PARAMETER TEST CONomoNS M IN T Y p t MAX UNITVOH High level voltage 10H- -1 rnA, VCC-4.5 V 2.4 VVOL Low level voltage IOL=2.1 rnA, VCC-4.5 V 0.4 VII Input current VI-O V to 5~5 V 10 p.A10Z Off-state outPut current S or G at 2 V or W at 0.8 V, 10 p.AVosO V to 5.5 VICC Supply current from VCC

    10=0 rnA, VCC=5.5 V, 40 70 mATA = OC Iworst caselc, Input capacitance VI-OV, f=1 MHz 8 pFCo Output capacitance VO-OV, 1=1 MHz 12 pF

    timing requirements over rflCOmmendedsupply voltage range and operating free-air temperature rangeTMS4016-12 TMS4016-15 TMS4016-2O TMS4016-25PARAMETER MIN UNITMAX MIN MAX MIN MAX MIN MAX

    tclrdl Read cycle time 120 150 200 250 n.tclwrl Write eyel. time 120 150 200 250 n.twlWI Write pulse Width 60 80 100 120 ns'$UIAI Address setup time 20 20 20 20 n,tsuisl Chip select setup time 60 80 100 120 n.tsulDI Data setup time 50 60 80 100 n.thlAI Address hold time 0 0 0 0 n.thlDI Data hold time 5 10 10 10 n.

    switching characteristics over recommended voltage range, TA = OC to 70"C with output loadingof Figure 1 (see notes 3 and 4)TMS4016-12 TMS4016-15 TMS4016-2O TMS4016-25PARAMETER UNITMIN MAX MIN MAX MIN MAX MIN MAX

    talAI Access time from address 120 150 200 250 n.'alSI Access tim. from chiP select low 60 75 100 120 n.talGI Access time from output enable low 50 60 80 100 n.'viAl Output data valid after address change 10 15 15 15 n.tdoslSI OutPUt dluble time after chip select high 40 50 60 80 ns'dosiGI OutPut disable ume after output enable high 40 50 60 80 n.'d1S1W1 Output disable time after wnte enable low SO 60 60 80 n.len IS) OUtput enable time after chiP select low 5 5 10 10 n.lenlGI Output enable time after output enable low 5 5 10 10 n.lenlWI Output enable time efter write enable high 5 5 10 10 ns

    NOTeS: 3. Cl "'"100 pF for a ll measurements except 'ct.sIW} and ten(W)CL"'"5 pF for tdil(W} and tenCW)'

    4. tellSand ten parameters are sampled and not 100% tested(a)

    GAMBAR 7-5 (a) Karakteristik AC dari TMS4016 SRAM. (b) Diagram timing dari TMS4016SRAM.

  • 5/14/2018 Bab7 Interface Memori

    10/51

    234 Pengantar Mikroprosesor

    timing waveform of read cycle (aoe noto 5)IO------tchd------~

    ADD"m ~f-----------4~----_2::=:::::;:-"'A1-------"i IN I / 1 1I I j+-"'G~ 1 1 . - ' ' ' 1 - 1N fo-'.n'G=1 I ; 1 1 1II';:~~"'Sl~=( I \. --"",J. ~~ tentS I ~ldlllSIB------------1@

  • 5/14/2018 Bab7 Interface Memori

    11/51

    Interface Memori 235

    A I 4 I 28 VeeA I 2 2 27 WEA 7 3 26 AnA 6 4 25 AsAs 5 24 A9A 4 6 23 AllA ) 7 22 OEA 2 8 21 AlOA I 9 20 CSA o IO 19 107100 II 18 106101 12 17 105102 13 16 10~GND 14 15 103

    P IN F UN C TION

    A o - AI 4100-107C SOEWEVeeGND

    AddressesDa ta connect ion sChip selectOutp ut e na bleWnteenable-5V SupplyGround

    GAMBAR 7-6 Diagram pin dari 62256, 32K X 8 statik RAM.

    Kelemahan lainnya dari DRAM memori adalah bahwa memori tersebut me-merlukan pin alamat yang begitu banyak dimana pabrik telah mengalikan inputalamat. Gambar 7-7 mengilustrasikan 64K x 4 DRAM, TMS4464. Perhatikanbahwa memori terse but hanya berisi 8 input alamat dimana hams berisi 16 -bilangan yang diperlukan ke alamat lokasi memori 64K. Satu-satunya cara bahwa16 bit alamat dapat dijejalkan ke dalam 8 pin alamat adalah dalam peningkatan8-bit (8-bit tambahan). Operasi ini memerlukan dua pin khusus yang disebutdengan column address strobe (CAS) dan row address strobe (RAS). PertamaAo- A7 ditempatkan pada pin alamat dan digabungkan (strobed) ke dalam penguat(latch) baris internal dengan RAS sebagai alamat baris. Berikutnya, bit alamatAg-AJ5 ditempatkan pada delapan input alamat ini dan digabungkan (strobed) ke

  • 5/14/2018 Bab7 Interface Memori

    12/51

    236 Pengantar Mikroprosesor

    TMS4484 .. JL OR NL PACKAGE(TOP VIEW)

    G VSS001 004002 CASW 003AAs AOA6 AlA5 A2A4 A3

    VOO A7(a)

    1 U182 173 164 155 146 137 128 11

    ,[ 9 100

    AOA7C A SOQ1004GR A SVOOVSSW

    Address InputsColumn Address StrobeData-tn/Data-OutOutput EnableRow Address Strobe+5V Supply

    PIN NOMENCLATURE

    GroundWnte Enable(b)

    GAMBAR 7-7 Pinout dari TMS4464, 64K X 4 dinamik RAM (DRAM).

    dalam penguat kolom internal dengan CAS sebagai kolom alamat (lihat gambar7-8 untuk timing ini). Alamat 16-bit yang ada dalam internal ini menyebarkanalamat isi dari salah satu dari 4-bit lokasi memori.Gambar 7-9 mengilustrasikan set dari multiplexer yang digunakan untuk

    menggabungkan kolom dan alamat baris ke dalam delapan input alamat daripasangan TMS4464 DRAM. Di sini RAS tidak hanya menggabungakan barisalamat ke dalam DRAM, tetapi juga mengubah alamat yang diterapkan ke inputalamat. Hal ini mungkin disebabkan oleh propaganda penundaan waktu yangpanjang dari multiplexer. Jika RAS adalah logika 1, maka input B dihubungkanke output Y dari multiplexer, dan jika input RAS adalah logika 0, maka input Aakan menghubungkan ke output Y. Oleh karena penguat (latch) alamat barismerupakan edge-triggered, maka dia mencakup alamat baris sebelum alamat padainput berubah ke alamat kolom. Penjelasan lebih detail/mendalam atas DRAMdan interfacing DRAM dijelaskan dalam Bagian 7-5.Di sini, seperti dalam SRAM, pin W akan menuliskan data ke DRAM dan pinG memungkinkan hubungan output untuk operasi pembacaan. (W menggantiWE, dan G mengganti OE). Gambar 7-10 mengilustrasikan pinout dari dinamik

  • 5/14/2018 Bab7 Interface Memori

    13/51

    Interface Memori 237

    1e-------tcIW--------eoj1 jer----twRL----~

    : : : - - - . . . X ! L . I . , . I . _ _ ~-tl-II !-t----ICLRH-..-jIl.-IRLCL--1I t . . L--~I

    AO - A7

    GAMBAR 7-8 RAS, CAS, dan input timing address untuk TMS4464 DRAM.

    RAM 41256. Piranti ini diorganisasikan sebagai 256K xl memori yang diperlu-kan sekecil 70 ns untuk mengakses data.Baru ini, DRAM yang lebih besar telah ada, dan diorganisasikan sebagai 1M

    x 1memori. Pada bagian horisontal adalah memori 4M x 1 yang dibuat oleh IBMCorporation. Gambar 7-11 mengilustrasikan pinout dari TMX4C 1024 oleh TexasInstrument. Piranti ini juga sering diberi bilangan 511OOOP.

    7-2 DECODING/PENGURAIAN ALAMATUntuk membubuhkan/melampirkan piranti memori pada mikroprosesor, makaperlu untuk menguraikan alamat dari mikroprosesor untuk membuat fungsi me-mori pada bag ian yang unik atau bagian dari peta memori. Tanpa penguraianalamat, hanya satu piranti memori yang dapat dihubungkan ke mikroprosesor,yang secara virtual tidak berguna. Dalam bagian ini, kita akan menjelaskansedikit teknik pengkodean alamat yang lebih umum termasuk decoder yangditemukan dalam beberapa sistem.

  • 5/14/2018 Bab7 Interface Memori

    14/51

    238 Pengantar Mikroprosesor

    I A I YI B2 A 7 2 Y2 B 4I3 A 5 3 Y73 B4 A 4 Y4 B S

    SI A I YI B2 A 7 2 Y42 B I3 A 5 3 Y73 B4 A 4 Y4 B

    Ao

    RAS

    GAMBAR 7-9 Multiplexer address untuk TMS4464 DRAM.

    Mengapa Memori Decode?Sebagai perbandingan dari mikroprosesor 8088 dan EPROM 2716 akan diketahuibahwa EPROM mempunyai 11 hubungan alamat dan mikroprosesor mempunyai20. lni berarti bahwa mikroprosesor mengirimkan 20':'bit alamat memori ketikamembaca atau menuliskan data.Jika EPROM hanya mempunyai 11 input alamat, maka ada yang salah gabung

    yang harus dibetulkan. Jika hanya 11 dari pin alamat 8088 dihubungkan kememori, maka 8088 akan melihat hanya 2K byte memori sebagai pengganti dari1M byte yang memori untuk diisi. Decoder digunakan untuk menggabungkanmikroprosesor dengan komponen memori.

  • 5/14/2018 Bab7 Interface Memori

    15/51

    Interface Memori 239

    As 1 16 GNDDin 2 15 C ASWR 3 14 DoutRAS 4 13 A6Ao 5 12 A3A2 6 II A4AI 7 10 AsVee 8 9 A7

    P IN FUNC I lONS

    Ao - AsDInDOUICASRASWRVeeGND

    AddressesD ata inD ata outC olum n A dd res s Strob eR ow A ddress Strob eW nte en ab le+ 5V S up plyGround

    GAMBAR 7-10 41256 dinamik RAM yang diatur sebagai 256K xl peralatan memori.

    Decoder Gerbang NAND yang SederhanaHubungan alamat AIO-Ao dari 8088 dihubungkan ke input alamat AIO-Ao dariEPROM, dan sembilan pin alamat yang masih ada (AI9-AII) dihubungkan keinput dari decode (lihat Gambar 7-12), yang memilih EPROM untuk salah satudari beberapa bagian 2K-byte dari seluruh rentangan alamat 1M-byte dari 8088.Dalam suatu sirkuit, gerbang NAND akan menguraikan alamat memori. Out

    put dari gerbang NAND akan menjadi logika 0 jika sembilan pin alamat 8088yang paling kiri (AI9-AII) semuanya adalah logika 1. Output logika 0 dari pengu-rai dihubungkan ke input CE, yang memilih (mungkin) EPROM. Ingat kembalibahwa jikaCli adalah logika 0, maka data akan dibaca dart EPROM hanyajikaOE adalahjuga logika O . OE diaktifkan dengan signal 8088 RD.Jika alamat 20-bit binary yang diuraikan dengan gerbang NAND dituliskan

    sehingga 9 bit yang paling kiri adalah 1 dan 11 bit yang paling kanan adalah don 't

  • 5/14/2018 Bab7 Interface Memori

    16/51

    240 Pengantar Mikroprosesor

    Din I 18 GNDW 2 17 DoutRAS 3 16 C ASN /C 4 IS A9Ao 5 14 AsAl 6 13 A7A2 7 12 A6A3 8 II A5Vee 9 10 A4

    P IN FUNC TIONS

    Ao -A9OmDoutC ASRAS

    AddressesD ata in

    w

    D ata outC olum n A ddres s Strob eR ow A ddres s StrobeWr it e e na b le+5V SupplyGround

    VeeGND

    GAMBAR 7-11 1M x 1 DRAM

    care (X), maka rentangan alamat aktual dari EPROM dapat ditentukan. (A don',care adalah logika 1 atau logika 0, jika memungkinkan).Contoh 7-1 mengilustrasikan bagaimana rentangan alamat untuk EPROM iniditentukan dengan penulisan secara eksternal bit alamat yang diuraikan (A19-AlI)

    dan bit alamat yang diuraikan dengan EPROM (AlO-Ao) sebagai Os untuk mele-takkan alamat bagian bawah dan kemudian sebagai 1 untuk menemukan alamatbagian atas. Contoh 7-1 juga mengubah batas binary atas dan bawah ke dalamheksa desimal. Di sini 2K EPROM diuraikan pada lokasi alamat memori FF800h-FFFFFH. Perhatikan bahwa dia adalah bagian 2K-byte dari memori dan jugadialokasikan untuk 5088 tempat yang paling mungkin dalam EPROM.Meskipun contoh tersebut berfungsi untuk membuat point, gerbang NANDjarang digunakan untuk menguraikan memori sebab setiap bagian memori me-

    merlukan decoder gate NAND. Yang mahal dari pilihan ini adalah diperlukannyasuatu alternatif yang harus ditemukan.

  • 5/14/2018 Bab7 Interface Memori

    17/51

    Interface Memori 241

    A n 00t t 80888088 Address Databus busA,o 07A'9 2716A,.AI7 CE OE

    101M

    GAMBAR 7-12 Dekoder gate NAND yang sederhana digunakan untuk memilih komponenmemori 2716 EPROM untuk lokasi memori FFBOOH-FFFFFH.

    1111 1111 1XXX XXXX XXXXor

    1111 1111 1000 0000 0000 = FF800Hto

    1111 1111 1111 1111 1111 =FFFFFH

    CONTOH7-1

    Decoder Baris 3 hingga 8 (74LS138)Salah satu dari decoder sirkuit yang lebih umum dalam banyak sistem yangberbasis mikrokomputer adalah 74LS 1383 hingga 8 decoder baris. Gambar 7-13mengilustrasikan decoder ini dan tabel yang benar.Tabel yang benar menunjukkan bahwa hanya ada satu dari delapan output yangturun pada suatu saat. Untuk semua output decoder yang turun, maka tiga kemung-

    kinan input - E 1 , E 2 , dan E 3 - hams semuanya di aktifkan. Agar aktif, maka input E 1dan E2 keduanya harus rendah (logika 0) dan E 3 harus menjadi tinggi (logika 1).

  • 5/14/2018 Bab7 Interface Memori

    18/51

    242 Pengantar Mikroprosesor

    Bila 74LS138 dimungkinkan, maka input alamat (C, B, dan A) memilih pinout put yang rendah. Bayangkan delapan input EPROM CE dihubungkan kedelapan output dari decoder. Hal ini merupakan piranti yang sangat kuat karenadapat menguraikan delapan piranti m~mori yanng berbeda pada waktu yangsarna.Contoh Sirkuit Decoder.' Perhatikan bahwa output dari decoder yang diilus-trasikan dalam Gambar 7-14 dihubungkan ke delapan piranti memori EPROM2764. Di sini decoder akan memilih delapan 8K-byte block memori untuk total64K byte memori. Gambar tersebut juga mengilustrasikan rentangan alamat darimasing-masing piranti memori dan hubungan yang umum pada piranti memori.Perhatikan bahwa semua hubungan alamat dari 8088 dihubungkan ke sirkuit ini.Juga perhatikan bahwa output decoder dihubungkan ke input CE dari EPROM,dan signal RD dari 8088 dihubungkan ke input OE dari EPROM. Hal inihanya memungkinkan EPROM terpilih untuk divalidasikan dan dikirimkandatanya ke mikroprosesor melalui data bus ketika RD menjadi logika O.Dalam sirkuit ini, 3-input gerbang NAND dihubungkan ke bit alamat A19-A17.Jika empat input alamat tinggi, maka output dari gerbang NAND ini akan rendah

    dan memungkinkan input 2 . Input E3, dihubungkan secara langsung ke A16.Dengan kata lain, untuk memungkinkan decoder ini, empat hubungan alamatyang pertama (A19-A16)harus tinggi.Input alamat C, B, dan A dihubungkan ke pin alamat A15-A13. Tiga input

    alamat ini akan membedakan pin output mana yang rendah dan EPROM manayang dipilih ketika 8088 membuat output alamat memori dalam rentangan ini kesistem memori.Contoh 7-2 menunjukkan bagaimana rentangan alamat dari seluruh decoderditentukan. Perhatikan bahwa rentangan tersebut adalah lokasi FOOOOH-FFFFFH.Dia adalah 64K byte rentang memori.Bagaimana rentangan alamat dari setiap piranti memori yang dibubuhkan

    ke output decoder ini ditentukan? Sekali lagi, pola bit binary dituliskan dan,pada saat ini, input alamat A, B, dan C adalah not don't care. Contoh 7-3menunjukkan bagaimana output 0 dari decoder dibuat untuk berjalan rendahdalam memilih EPROM yang dibubuhkan ke pin tersebut. Di sini, C, B dan Aditunjukkan sebagai logika O.Jika rentangan alamat dari EPROM yang dihubungkan ke output 1 dari deco-

    der diperlukan, maka ditentukan secara nyata cara yang sarna dengan output O.

  • 5/14/2018 Bab7 Interface Memori

    19/51

    Interface Memori 243

    Selection {Inputs

    Enable {Inputs

    A 0B IC 2

    74LS138 34E, 5E2 6E3 7

    Inputs OutputsEnable SelectE, E~ E3 C B A 0 I 2 3 4 5 6 7I X X X X X I I I I I I I IX I X X X X I I I 1 I I 1 1X X 0 X X X I 1 1 1 1 I I I0 0 1 0 0 0 0 I I I 1 I 1 10 0 1 0 0 I I 0 I 1 I I 1 10 0 I 0 I 0 I I 0 I I I I I0 0 I 0 I 1 1 1 1 0 I I 1 10 0 1 I 0 0 I 1 1 I 0 I I I0 0 I I 0 I I I I I I 0 I I0 0 I I 1 0 I I I I I I '0 I0 0 1 I I I I I I 1 1 I I 0

    GAMBAR 7-13 74LS 138,3-to-8-line decoder dan tabel fungsi.

    1111 XXXX XXXX xxxx XXXXo r

    1111 0000 0000 0000 0000to

    1~11 1111 1111 1111 1111

    CONTOH7-2

    F O O O O H

    F F F F F H

    Outputs

  • 5/14/2018 Bab7 Interface Memori

    20/51

    244 Pengantar Mikroprosesor

    " A o f-Address ) I-

    A'2 I-A 00 2764 f-

    Data t l-I-V 07 ~RD--< OE0 FOOOO - FI FFF C E

    B 1 F :!OOOO - F 3F FF C EC F4000 - F5FFF2 C E3 F6000 - F7FFF ~ C E'138 F8000 - F9FFF."f E, 4 C Er< E1 5 F AOOO - FBFFF C E

    E, 6 FC OOO - FDFFF C E7 FEOOO - FFFFF C E-

    ~GAMBAR 7-14 Sirkuit yang menggunakan delapan 2764 EPROM untuk bagian 64K X 8 darimemori daIam sistem berbasis mikroprosesor 8088. Addres yang dipilih dalm sirkuit ini adalahFOOOOH-FFFFFH.

    e B A1111 O O O X X X X X X X X X X X X Xo r1111 0000 0000 0000 0000 =F O O O O Ht o

    1111 0001 1111 1111 1111 = F I FF F H

    CONTOH7-3

    Satu-satunya perbedaan adalah bahwa sekarang input C, B, dan A berisi 001 seba-gai pengganti dari 000 (lihat contoh 7-4). Rentangan alarnat output yang masihada ditentukan dengan cara yang sarna dengan mengganti alarnat binary dari pinoutput ke C, B, dan A.

  • 5/14/2018 Bab7 Interface Memori

    21/51

    Interface Memori 245

    CBA1111 001X XXXX XXXX XXXXor

    1111 0010 0000 0000 0000 F2000Hto

    1111 0011 1111 1111 1111 = F3FFFH

    CONTOH7-4

    Decod~rBaris 2-ke-4 Dual (74LS139)Decoder lain yang menemukan beberapa aplikasi adalah 74LS 139 dual 2-ke-4decoder baris. Gambar 7-15 mengilustrasikan kedua pin out dan tabel yang benaruntuk decoder ini. 74LS 139 berisi dua decoder baris 2-ke-4 yang terpisah -masing-masing dengan alamat sendiri, enable dan hubungan outputnya sendiri.

    Decoder Alamat PROMDecoder alamat yang umum yang mutakhir adalah PROM bipolar, yang digu-nakan karena bilangan hubungan input yang besar, yang mengurangi bilangansirkuit lainnya yang diperlukan dalam sistem decoder alamat memori. Decoder74LS 138 mempunyai enam input yang digunakan untuk hubungan alamat. Tipe"yang lain dari PROM mungkin masih banyak lagi.Misalnya, PROM TPB28L42 (512 x 8) digunakan sebagai decoder alamat

    yang mempunyai 10 hubungan input dan 8 hubungan output. PROM ini dapatmengganti sirkuit yang diilustrasikan dalam Gambar 7-14 tanpa gerbang NAND3-input ekstra. Hal ini akan menghemat ruang pada papan sirkuit yang dicetak danjuga akan mengurangi harga sistem dalam produksi banyak.

    Gambar 7-16 mengilustrasikan decoder alamat ini dengan PROM yang ada.PROM adalah piranti memori yang hams diprogram dengan pola bit binary yangbenar untuk memilih delapan piranti memori EPROM. PROM itu sendiri mempu-nyai 9 input alamat yang memilih satu dari 512 internal 8-bit lokasi memori. Input(G) yang masih ada hams dihubungkan ke tanah karena jika output PROM ini

  • 5/14/2018 Bab7 Interface Memori

    22/51

    246 Pengantar Mikroprosesor

    74LSI39

    ~election {inputslA' IY oIB IY ,

    IY ~IE IY ,1--------2A 2Y o2B 2Y ,

    2Y ~2E 2Y ,

    OutputsEnableinputSelecnon {inputs OutputsEnableinput

    Input; Output;IT A B Yo v ; - Y 2 Y 30 0 (J 0 I I I0 0 I I 0 I I0 I 0 I I 0 I0 I I I I I 0I X X I I I I

    GAMBAR 7-15 Pinout dan tabel kebenaran dari 74LSI39, duaI2-to-4-line decoder.

    mengalir ke pernyataan dengan impedansi tinggi, maka satu atau lebih EPROMdapat dipilih dengan reaksi noise dalam sistem.Tabel 7-1 mengilustrasikan pola bit binary yang diprogram ke dalam setiap

    lokasi PROM untuk memilih delapan EPROM yang berbeda. Keuntungan utamadalam menggunakan PROM adalah bahwa peta alamat dengan mudah dapatdiubah dalam suatu bidang. Oleh karena PROM hadir dengan seluruh lokasi yangdiprogram sebagai logika 1, maka hanya 8 dari 512lokasi yang diperlukan untukdiprogram. Hal ini akan menghemat waktu yang berharga untuk suatu pembuatan.

  • 5/14/2018 Bab7 Interface Memori

    23/51

    Interface Memori 247

    ~ A o -Address t ,_/A,~ f-A 00 2764 -

    Data t r-r-" 01 -RD -----0 OEAn On FOOOO- F IFFF C EA, 0, F :!OOO- F 3FFF C EA:! F4000 - F5fFF C EA, O~A. 0, F6000 - F7FFF C EA; O . FHOOO- F 9FFF C EA6 0, FAOOO- F BF FF C E-A7 F COOO - FDF FFr- A. 0, C Er-o G 07 FE () () () - F FFFF C E_ . . . . .

    GAMBAR 7-16 Sistem memori menggunakan TPB28L42, 512 X 8 PROM sebagai addressdecoder.

    Decoder yang dapar diprogram PLA atau PALProgrammable logic array (PLA) atau programmable array logic (PAL) jugamerupakan calon untuk penyebaran alamat memori. Piranti ini hadir dalam duajenis: satu terdiri dari beberapa tempat penyimpanan flip-flop internal, dan yanglainnya semata-mata merupakan sirkuit kombinasi yang dapat diprogram. Hanyajenis yang kedua yang dapat diterapkan untuk penyebaran alamat. Problem utamadalam PLA atau PAL adalah bahwa PAL atau PLA terse but tidak menawarkanhubungan input atau output yang banyak seperti PROM tipikal. Sekarang ini,PAL atau PLAjuga lebih mahal. Oleh karena itu, dalam banyak hal, PROM merupa-kan pilihan yang terbaik untuk decoder alamat memori yang dapat diprogram.

    7-3 INTERFACEMEMORI8088Teks ini berisi bagian yang terpisah pada interfacing memori untuk 8088 dan8086 karena metode yang digunakan ke alamat memori sedikit berbeda dengan

  • 5/14/2018 Bab7 Interface Memori

    24/51

    248 Pengantar Mikroprosesor

    Inputs OutputsG As A7 A6 As A4 A3 A2 A1 Ao 00 01 O2 03 04 Os 06 C.0 0 0 1 1 1 0 0 0 0 1 1 10 0 0 1 1 1 1 0 0 1 0 1 1 10 0 0 1 1 1 1 0 1 0 1 0 1 1 1 10 0 0 1 1 1 U 1 1 1 1 0 1 1 10 0 0 1 1 1 1 0 0 1 1 1 1 0 1 1 10 0 0 1 1 1 1 1 0 1 1 1 1 1 1 0 1 10 0 0 1 1 1 1 1 0 1 1 1 1 1 1 0 10 0 0 1 1 1 1 1 1 1 1 00 all other addresses 1 1 1 1 1

    TABEL 7-1 Pola bit pemrograman PROM untuk Gambar 7-16

    dua mikroprosesor yang ada. Para insinyur hardware atau teknisi yang inginmenyebarkan penemuannya dalam interfacing 16 bit mikroprosesor harus mem-pelajari seluruh bagian tersebut. Bagian ini jauh lebih lengkap dibandingkan de-n_ganbagian dalam interface memori 8086, yang mencakup hanya materi yangtidak terdapat dalam bagian 8088.Dalam bagian ini, kita akan menguji interface memori ke RAM dan ROM dan

    menjelaskan kesamaan pengecekan, yang menjadi tempat yang umum dalambeberapa sistem komputer yang berbasis mikroprosesor. Kita juga akan menye-butkan secara singkat skema koreksi kesalahan yang ada dalam sistem memori.Interface Memori 8088 yang PokokMikroprosesor 8088 mempunyai 8-bit data bus, yang akan membuatnya idealuntuk dihubungkan ke piranti memori 8-bit yang umum yang ada sekarang ini.Namun dernikian, agar 8088 berfungsi secara benar dengan memori, sistemmemori harus mengartikan kode alamat untuk memilih komponen memori, danharus menggunakan signal kontrol RD, WR, dan 101M yang disediakan oleh 8088untuk mengontrol memori.Susunan mode minimum untuk 8088 digunakan dalam bagian ini dan padapokoknya sama dengan sistem mode maksimum untuk interface memori. Perbe-daan utama adalah bahwa mode maksimum 101M dikombinasikan dengan RD

  • 5/14/2018 Bab7 Interface Memori

    25/51

    Interface Memori 249

    untuk membuat signal MRDC, dan 101M dikombinaskan dengan WR untukmembuat signal MWTC. Signal kontrol mode maksimum ini dikembangkan didalam 8288 pengontrol bus. Dalam mode minimum, memori akan melihat 8088sebagai piranti dengan 20 hubungan alamat (AI9-AO), 8 hubungan bus data(ADrADo), dan signal kontrol 101M, RD, dan WR.Inlet/acing EPROM ke 8088. Kita akan mengetahui bahwa bag ian ini sangatmirip dengan Bagian 7-2 tentang decoder. Perbedaannya adalah bahwa dalambagian ini, kita akan mendiskusikan pemyataan menunggu dan menggunakansignal 101M untuk membantu decoder.Gambar 7-17 mengilustrasikan mikroprosesor 8088 yang dihubungkan ke delapanEPROM 2732, 4K x 8 piranti memori yang sangat umum digunakan sekarang ini.2732 mempunyai satu input alamat lebih banyak (All) dibandingkan dengan 2716dan dua kali jumlah memori. Piranti dalam ilustrasi ini akan menyebarkan delapan4K x 8 block memori, atau total32K x 8 bit dari ruang alamat fisik untuk 8088.Decoder dihubungkan dengan sedikit berbeda dari pada yang diharapkan

    karen a jenis EPROM ini mempunyai waktu akses 450 ns. Ingat kembali Bab 6bahwa ketika 8088 dioperasikan dengan 5-MHz clock, maka akan memungkin-kan waktu 460 ns untuk mengakses memori. Oleh karen a penundaan waktu tam-bahan pada decoder, maka tidak mungkin bagi memori ini untuk berfungsi dalam460 ns. Untuk membetulkan kesalahan ini, para insinyur harus menambahkangerbang NAND untuk membuat signal yang dapat memungkinkan decoder dansignal pada piranti pembuat pemyataan menunggu, yang tercakup dalam Bab 6.Dengan pemyataan menunggu yang disisipkan setiap kali bagian memori inidimasukkan, 8088 akan memungkinkan waktu 660 ns bagi EPROM untuk meng-akses data. Ini merupakan waktu yang cukup bagi komponen memori 450 ns un-tuk akses data, bahkan dengan penundaan yang dibuat oleh decoder.

    Perhatikan bahwa decoder dipilih untuk rentangan alamat memori yang me-mulai pada lokasi F8000H dan berlanjut melalui lokasi FFFFFH - bagian atas32K byte memori. Bagian memori ini adalah EPROM karena FFFFH merupakantempat dimana 8088 akan memulai pembuatan instruksi setelah mengatur kem-bali hardware. Software yang disimpan dalam bagian dari memori ini akan berisiJMP yang panjang pada lokasi FFFFOH yang akan melompat ke lokasi F8000Hsehingga program yang masih ada dapat dibuat.Inlet/acing RAM ke 8088. RAM sedikit lebih mudah untuk dihubungkan (in-terface) dibandingkan dengan EPROM karena hampir semua komponen memori

  • 5/14/2018 Bab7 Interface Memori

    26/51

    250 Pengantar Mikroprosesor

    101M

    -. Ao -Address t r-/All -WAITA 00 2732 -

    Data t -f-' " 07 rRD ----(l OE

    A," A 0 F8000-F8FFF CEAll B F9000-F9FFF _CEA,. C

    12 FAOOO-FAFFF CE

    ~ 3FBOOO-FBFFF CE, 138 FCOOO-FCFFFA,s- 4 CE

    A'6- >-----< E, 5 FDOOO-FDFFF . . .I CEA'7- !.;\. 6 FEOOO-FEFFF CEA,s- ~ El FFOOO-FFFFFA9- E, 7 CEF " "~IK+5V

    GAMBAR 7-17 Delapan 2732 EPROM dihubungkan antarmuka dengan mikroprosesor 8088.Perhatikan bahwa output dari gerbang NAND digunakan untuk menyebabkan keadaan tunggusetiap kali bagian dari memori ini dipilih.

    RAM tidak memerlukan pernyataan menunggu. Bagian yang ideal dari memoriuntuk RAM berada di bagian bawah, yang berisi vektor untuk interrupsi. Vektorinterrupsi (didiskusikan lebih detail dalam Bab 9) sering diubah dengan paketsoftware yang berbeda, sehingga agak penting untuk menuliskan sandi/encodebagian memori ini dengan RAM.Dalam Gambar 7-18 dua puluh empat 4016 2K x 8 statis RAM dihubungkan

    dengan 8088, dimulai pada lokasi memori OOOOOOH.oard sirkuit ini mengguna-kan tiga decoder untuk memilih decoder lain untuk bagian memori yang semesti-nya. Dua puluih empat 2K RAM akan mengisi memori dari lokasi OOOOOHme-lalui lokasi OBFFFH, untuk 48K byte memori.Decoder pertama (A) dalam sirkuit ini akan memilih tiga decoder lainnya.Suatu alamat dimulai dengan 0000 00 akan memilih decoder B, 0000 01 akan me-

    milih decoder C, dan 0000 10 akan memilih decoder D. Perhatikan bahwa limapin ekstra tetap pada output dari decoder A. Hal ini memungkinkan lima 16K x 8

  • 5/14/2018 Bab7 Interface Memori

    27/51

    Interface Memori 251

    block RAM lagi, untuk total 128K X 8, hanya dengan menambahkan RA~ dandecoder tambahan kedua.Juga perhatikan dari sirkuit dalam Gambar 7-18 bahwa semua input alamat ke

    bagian memori ini akan ditahan, seperti hubungan bus data dan signal kontrol RD danWR. Penahanan adalah penting jika banya piranti yang muncul pada board tunggalatau pada sistem tunggal. Anggap bahwa tiga board lainnya seperti ini akan dipasangke dalam sistem. Tanpa buffer pada setiap board, beban pada alamat sistem, data, dankontrol bus akan cukup untuk mencegah operasi yang semestinya. (Pembebananyang berlebihan akan menyebabkan output logika 0 muncul di atas 0.8 V maksimumyang dimungkinkan dalam sistem). Buffer secara normal digunakan jika memoriakan berisi tambahan atas beberapa tanggal yang akan datang. Jika memori tidakakan pemah ditambah, maka buffer tidak diperlukan.

    Paritas pad a Deteksi Kesalahan MemoriOleh karena memori yang besar semacam itu ada dalam sistem sekarang ini, danoleh karena harga sirkuit adalah minimal, maka banyak pabrik board memorimenambahkan pengujian yang sarna pada board memori RAM. Checking kesa-maan akan menghitung bilangan Is dalam data dan menunjukkan apakah adasuatu kesamaan atau bilangan yang aneh. Jika seluruh data disimpan dalambilangan paritas genap (dengan bilangan genap dari Is), maka l-bit kesalahandapat dideteksi.Gambar 7-19 mengilustrasikan IC generator/detektor paritas 74AS280 yang

    terintegrasi. Sirkuit ini mempunyai sembi Ian input dan membuat paritas genapatau ganjiJ untuk 9-bit bilangan yang ditempatkan pada inputnya. Dia juga akanmengecek paritas dari 9-bit bilangan yang dihubungkan ke inputnya.Gambar 7-20 mengilustrasikan 16K x 8 statis RAM board yang mempunyai

    pembuatan paritas dan deteksi. Perhatikan bahwa 74AS280 (A) membuat paritas bityang disimpan dalam satu dari empat TMS4044 4K x 1 RAM memori. Di sinidelapan data bus dihubungkan pada input generator paritas A-H. Input I dihu-bungkan ke tanah sehinggajika bilangan yang sarna dari Is muncul pada data bus,maka 1 (output yang sarna) akan disimpan dalam RAM yang sarna. Jika bilanganganjil dari Is muncul, maka 0 akan disimpan dalam paritas RAM. Di sini paritasganjil disimpan untuk setiap byte data, termasuk kesamaan bit yang dituliskan kememon,

  • 5/14/2018 Bab7 Interface Memori

    28/51

    252 Pengantar Mikroprosesor

    BANK 0A o l-tyAIODot i-- " 07 -WR W

    RD- G 4016A,,- '244 A OP- SAJ,2- B IP- SA'J- E E c 2 P - S3D- S9 '[38 40- SE , 50- SLC E , 60- SE ; 70- S

    +5V

    BANK IA o -tAIO

    A 0 ~B I Do,___ C 2 ~ t'138 3 ~ y D7 I-4~-

    ~, 5 - ~ w4E , 6 ~ I-- G 4016E ; 7 l- S S s S S S S SA OP-f-- B IP-

    t=lllBANK :2'-- C 2P-

    ,138 3P- A o -4P-E , ~t t f-LO E 2 = ] 1 1 I I I AJ[)E J 70- Do -: f-l_~ 07 I-Wf - < l G 4016SS S S S

    S S S

    [O/M

    ~ ~~~..J _

    t ==::) (2)AIO E E ~ E ~A~ ~

    ADo _ " '245f < ~D7 IL_ ~GAMBAR 7-18 Sistem memori 48K X 8 menggunakan dua puluh empat TMS4016 SRAMS.

  • 5/14/2018 Bab7 Interface Memori

    29/51

    Interface Memori 253

    SNUAS2BO . J PACKAGESN74AS2BO N PACKAGE

    ITOPVIEW,

    HNe 3

    I 41:EVEN 51:000 6

    GNO...,_7_~

    VeeFEoe

    (a)FUNCTION TABlE

    NUMBER OF INPUTS A OUTPUTSTHRU I THAT ARE HIGH 1: EVEN 1000

    0.2.4.6.B H L1.3.5.7.9 L H

    (b)

    GAMBAR 7-19 Pinout dan tabel fungsi generator/detektor paritas 74AS280 9-bit.

    Jika data dibaca dari memori, setiap data dihubungkan ke 74AS280 yang lain(B) untuk mengecek kesamaan.Dalam hal ini, seluruh input pada pengecek akandihuubungkan. Input A-H dihubungkan ke data output RAM, dan input I di-hubungkan ke paritas RAM. Jika paritas ganjil, maka segalanya akan benar,output paritas dari 74AS280 adalah logika O . Jika bit informasi pembacaan darimemori berubah karena suatu alasan, maka pin output kesamaan dari 74AS280akan menjadi logika 1.Pin ini dihubungkan ke input khusus dari 8088 yang disebut dengan inputNonmasable Intterupt (NMI). NMI tidak pernah dimatikan. Jika ditempatkanpada logika levell, program yang dibuat akan diinterrupsi, dan subrutin khususakan menunjukkan bahwa paritas kesalahan telah dideteksi dengan sistem me-mori. (Lebih detail tentang interrupsi dijelaskan dalam Bab 9).Aplikasi dari kesalahan paritas ditentukan waktunya sehingga data yang dibaca

    dari memori akan ditempatkan pada pernyataan terakhir sebelum input NMI terjadi.Operasi diukur dengan D-tipe FLip FLop yang menguatkan output dari pengecekparitas pada akhir cycle RD dari bagian memori ini. Dengan cara ini, memorimempunyai cukup waktu untuk membaca informasi dan melewatinya denganmelalui generator sebelum output darinya disederhanakan dengan input NMI.

  • 5/14/2018 Bab7 Interface Memori

    30/51

    254 Pengantar Mikroprosesor

    c -I . .AEVEN '280I AH

    B */).CLRQ D EVEN I ParityH A -, Ao'280 t V I-CLK A r -, / ~1" All- I-- "- DID

    ~ WP-~ G 4 0 4 4.~

    A 0 - SB'I39 1 - S" - 2 - S.:: E 3 - S

    1 - 1--1---c Bank"-d~ Ao f I-AIO~ Do l-f -D7WG 2016

    A 0 f-- SB 1 f--- SC 2 f--- S'138 3 f-- S4 f-- S

    ---

  • 5/14/2018 Bab7 Interface Memori

    31/51

    Interface Memori 255

    Koreksi KesalahanSkema koreksi kesalahan telah terse bar untuk waktu yang lama, tetapi pabriksirkuit yang terintegrasi hanya baru-baru ini mulai untuk membuat sirkuit pembe-tulan kesalahan. Salah satu dari sirkuit ini adalah 74LS636, koreksi kesalahan8-bit dan sirkuit deteksi yang secara otomatis akan membetulkan kesalahanpembacaan 9-bit dan flag dari 2-bit kesalahan.Piranti ini akan membetulkan kesalahan dengan menyimpan 5 bit paritas

    dengan masng-masing byte memori data. Hal ini tidak akan meningkatkanjumlah memori yang diperlukan, tetapi juga ada bagian koreksi kesalahanbit-tunggal yang otomatis. Jika lebih dari dua bit salah, maka sirkuit ini tidakdapat dideteksi. Untungnya, hal ini jarang, dan usaha yang maksimal diper-lukan untuk membetulkan lebih dari kesalahan satu bit tunggal merupakan halyang sangat mahal dan sampai waktu sekarang usaha ini tidak baik. Bilamanakomponen memori gagal semuanya, maka bit seluruhnya akan tinggi atau ren-dah semuanya. Dalam hal ini sirkuit akan menandai processor dengan penun-juk kesalahan multiple-bit.

    Gambar 7-21 menunjukkan pinout dari 74LS636. Perhatikan bahwa pinouttersebut mempunyai delapan data pin 110, lima pin cek bit 110, dua kontrol input(So dan SI), dan dua output kesalahan; Single Error Flag (SEF) dan double errorflag (DEF). Input kontrol akan memilih tipe operasi yang akan dilakukan dandidaftarkan dalam tabel kebenaran dari Tabel 7-2.Jika kesalahan tunggal terdeteksi, maka 74LS636 akan berjalan ke lingkaran

    koreksi kesalahan, koreksi ini akan menempatkan 01 pada Sodan SI dengan mem-buat keadaan menunggu dan kemudian membaca koreksi kesalahan berikutnya.Gambar 7-22 mengilustrasikan sirkuit yang digunakan untuk mengoreksi ke-

    salahan bit-tunggal dalam 74LS636 dan untuk menginterrupsi prosesor melaluipin NMI untuk kesalahan bit-double. Untuk menyederhanakan ilustrasi, kitahanya akan menunjukkan pada satu 2K x 8 RAM dan kedua 2K x 8 RAM untukmenyimpan code cek 5-bit.Hubungan dari komponen memori ini adalah berbeda dengan contoh sebelum-

    nya. Perhatikan bahwa pin S atau CS akan dihubungkan ke tanah, dan buffer busdata akan mengontrol aliran ke sistem bus. Hal ini diperlukan jika data dimasuk-kan dari memori sebelum strobe RD rendah.Pada ujung negatif berikutnya dari clock setelah RD, 74LS363 akan meme-

    riksa single error flag (SEF) untuk menentukan apakah terjadi kesalahan atau

  • 5/14/2018 Bab7 Interface Memori

    32/51

    256 Pengantar Mikroprosesor

    pin .ssignmentsJ. N PACKAGES

    1 DEF 11 CB42 DBO 12 nc3 OBI 13 CB34 DB2 14 CB25 DB3 15 CBl6 DB4 16 CBO7 DB5 17 50B DB6 18 519 DB7 19 5EF10 GND 20 VCC

    (a)

    functional block diagram

    51-s-UNCTION SO S1_. SELECTOR 50'Si

    ~. . 5LATCH PARITY~C GENERATOR

    .H+ 104OE r-+4- 5 101 ERRORto- BUFFER I f--+ETECTOR

    OE_. BLATCH Vl+-

    ," 10C

    ~~-+- 8, ERROR ~ ERRORBUFFER CORRECTOR DECODER

    OE

    SEFDEF

    SO

    CHECK BIT I/OCBO THRU CB

    DATA BIT 1 /DBO THRU DB

    (b)

    GAMBAR 7-21 (a) Koneksi pin 74LS636. (b) Diagram blok 74LS636.

  • 5/14/2018 Bab7 Interface Memori

    33/51

    Interface Memori 257

    Error FlagsSo S , Function SEF DEF0 0 Write check word 0 00 1 Correct data word

    0 Read data 0 0Latch data

    'These levels are determined by the type of error.

    TABEL 7-2 74LS636 bit kontrol Sodan SI.

    tidak. Jika demikian, maka cycle koreksi akan menyebabkan deteksi kesalahantunggal dibenarkan. Jika terjadi kesalahan ganda, maka permintaan interrupsiakan dibuat oleh output double error flag (DEF), yang dihubungkan ke pin NMIdari mikroprosesor.

    7-4 INTERFACEMEMORI8086Mikroprosesor 8086 berbeda dengan 8088 dalam tiga hal: (1) bus data dari 8086adalah 16 bit lebamya bukannya 8 bit seperti dalam 8088, (2) pinbar 101M dari8088 adalah pin MIlO pada 8086, dan (3)ada signal kontrol baru yang disebutdengan bus high enable (BHE). Alamat bit AOjuga digunakan secara berbeda,Oleh karena bagian ini berdasarkan pada informasi yang disediakan dalam bagian7-3, maka sangatlah penting bagi kita untuk membaca bagian sebelumnya terlebihdulu.

    16-Bit Kontrol BusBus data dari 8086 adalah dua kali lebamya bus dalam 8088, dan mempunyairangkaian yang unik dari suatu problem yang belum dijumpai sebelumnya. 8086harus dapat menuliskan data ke suatu lokasi 16-bit atau lokasi 8-bit. Hal ini berartibahwa 16-bit bus data harus dibagi menjadi dua bagian yang terpisah (bank) yaitu8 bit panjangnya sehingga 8086 dapat menuliskan setengahnya atau seluruhnya.Gambar 7-23 mengilustrasikan dua bank memori. Satu bank (bank rendah) akan

  • 5/14/2018 Bab7 Interface Memori

    34/51

    258 Pengantar Mikroprosesor

    CheckCB~f

    NM I DEF CBn4016

    74L5636

    DataDB75EF tDBo

    40165,

    -

    RD and WRare conditionedby the memoryaddrevv.

    Data bus

    GAMBAR 7-22 Deteksi kesalahan dan sirkuit koreksi menggunakan 74LS636.

    berisi seluruh bilangan lokasi memori, dan bank yang lain (bank tinggi) akanberisi seluruh lokasi memori bilangan ganjil.8086 menggunakan signal BHE (bank tinggi) dan bit alamat Ao (bank rendah)

    untuk menunjukkan apakah satu bank memori atau keduanya digunakan dalam

  • 5/14/2018 Bab7 Interface Memori

    35/51

    Interface Memori 259

    FFFFF 1-------/F F F F D I - - --iFFFFB r--------

    FFFFEFFFFC 1-------1FFFFA

    ~ 5 1 - - ~~3 I--------i~I L- __

    0000400002 1-------1~ ~----~High bank

    (Odd bank)Low bank(Even bank)

    GAMBAR 7-23 Bank memori 8-bit high (odd) dan low (even) dari mikroprosesor 8086.

    transfer data. Tabel 7-3 menunjukkan levellogika pada dua pin tersebut dan bankatau bank yang dipilih.Pemilihan bank dapat dilakukan dengan dua cara : (I) signal WR yang terpisah

    dapat dikembangkan untuk setiap bank memori, atau (2) decoder yang terpisahclapat digunakan untuk setiap bank. Seperti yang akan ditunjukkan oleh perban-dingan yang hati-hati, teknik yang pertama adalah pendekatan yang paling ber-harga ke interface memori untuk mikroprosesor 8086.Decoder Bank Terpisah. Penggunaan decoder bank terpisah adalah cara yangpaling efisien untuk menangani penguraian kode alamat memori untuk 8086. Halini kadang-kadang dilakukan, tetapi sulit untuk dipahami mengapa.Gambar 7-24 mengilustrasikan dua decoder 74LS 138 yang digunakan untukmemilih komponen 64K RAM memori. Di sini decoder A mempunyai pin Aoyang tempatkan pada E J , dan decoder B mempunyai signal BHE yang ditempat-kan ke input EI.Oleh karena dicoder tidak akan aktifhingga seluruh enable input(input yang dipermudah) telah aktif, decoder A hanya akan aktif untuk 16-bitoperasi atau 8-bit operasi ke bank (tempat penyimpanan) tinggi. Dua decoder inidan enam belas 64K-byte RAM yang terkontrol akan menunjukkan seluruh ren-tangan 1M dari memori. TA, dua decoder digunakan untuk seluruh memori.Perhatikan dari garnbar ini bahwa pin alamat Ao tidak akan berhubungan kememori; sebagai penggganti akan berhubungan ke decoder. Juga perhatikan bahwaposisi bit bus alarnat Al dihubungkan ke input alamat memori Ao,A2dihubungkan ke

  • 5/14/2018 Bab7 Interface Memori

    36/51

    260 Pengantar Mikroprosesor

    AI, dan seterusnya. Alasannya adalah bahwa A o dari SOS6telah dihubungkan kedecoder A dan tidak perlu dihubungkan lagi ke memori. Jika A o ditambahkan ke pinmemori alamat AO, setiap lokasi memori lainnya dalam setiap bank memori akandigunakan. Hal ini berarti bahwa setengah memori akan sia-siajika Ao dihubung-kanke Ao.Strobe WR Bank yang Terpisah. Cara yang paling efektif untuk menanganipemilihan bank adalah dengan mengembangkan strobe penulisan yang terpisahuntuk setiap memori bank. Teknik ini hanya memerlukan satu decoder untukmemilih 16 bit panjang memori. Hal ini akan menghemat uang dalam beberapasistem dan juga akan mengurangi jumlah komponen.Mengapa tidak strobe RD terpisah untuk setiap memori bank? Hal ini meru-

    pakan biaya yang tidak diperlukan, oleh karena SOS6akan membaca hanya bytedata yang diperlukan pada waktu yang diberikan dari bus data. Jika 16 bit bagiandata selalu ditunjukkan ke bus data selama pembacaan, maka SOS6akan melupa-kan IS-bit bagian yang tidak diperlukan tanpa adanya konflik.Gambar 7-25 menunjukkan pembuatan strobe WR yang terpisah untuk me-

    mori. Di sini gerbang 74LS320R mengkombinasikan Ao dengan WR untuksignal pemilihan bank rendah (LWR) dan BHE dengan WR untuk signal pemilih-an bank tinggi (HWR).Gambar 7-26 menyatakan sistem memori yang kecil untuk mikroprosesor yang

    berisi bagian EPROM dan bagian RAM. Di sini ada delapan 2764 EPROM (SK x S)yang membandingkan 32K x 16 bit memori FOOOOH-FFFFFFHdan delapan 4016(2K x S) RAM yang menyusun SK x 16-bit memori pada lokasi 000000H-03FFFH.(Ingat bahwa meskipun memori panjangnya 16 bit, dia masih dihitung dalam byte).Sirkuit ini menggunakan 74LS139 dua decoder baris 2-ke-4 yang akan memi-lih EPROM dengan satu setengah dan RAM dengan setengah lainnya. Hal ini

    BHE Ao Function0 0 Both banks active0 1 High bank active

    0 Low bank activeNo banks active

    TABEL 7-3 Tabel kebenaran BHE dan Ao

  • 5/14/2018 Bab7 Interface Memori

    37/51

    Interface Memori 261

    High bankA . . D7 l-) 64K x 8 l-I-

    "'I V Do DRAM I-. . A is ~,-) t f o o - f-AnA 0 SB 1 SC 2 S

    , 138 3 -...rSE I 4 S

    ~ E 1 5 S6 S~ E 3 7 S

    Low bankA D7 " " " ", t 64K x 8 " " " "

    ~

    I-"'I Do DRAM t-

    A,~ l-t f o o -,/ I-A oA SB SC S138 SE I S

    ~ E 1 S SE , SIlO

    GAMBAR 7-24 Interface memori 8086 1M byte. Perhatikan bahwa tidak ada upaya untukmengilustrasikan RD, WR, dan input seleksi DRAM CAS dan RAS.

    akan menguraikan kode memori yang memiliki panjang 16 bit dan bukan 8 bitseperti sebelumnya. Perhatikan bahwa strobe RD dihubungkan ke seluruh inputEPROM OE dan semua pin input RAM G. Hal ini dikerjakan karenajika 8086

  • 5/14/2018 Bab7 Interface Memori

    38/51

    262 Pengantar Mikroprosesor

    BHE

    ~

    HWRWR

    LWRAn

    GAMBAR 7-25 Sinyal input seleksi tulis bank memori: HWR (high bank write) dan LWR (lowbank write).

    hanya melakukan pembacaan 8 bit data, maka aplikasi dari 8 bit yang tersisa kebus data tidak mempunyai pengaruh pada operasi 8086.

    Strobe LWR dan HWR dihubungkan ke bank memori RAM yang berbeda. Disini tidak akan menjadi masalah apakah mikroprosesor mengerjakan tulisan 16 bitatau 8 bit. Jika 8086 menuliskan bilangan 16-bit ke memori, maka kedua strobetersebut akan rendah dan memungkinkan pin LWR dan HWR pada kedua bankmemori. Tetapi, jika 8086 mengerjakan tulisan 8-bit, maka satu-satunya strobepenulisan akan rendah, penulisan hanya ke satu bank memori. Sekali lagi, satu-satunya waktu dimana bank memiliki perbedaan adalah untuk operasi penulisanmemori.Perhatikan bahwa signal decoder EPROM dikirimkan ke generator penyataan

    menunggu 8086 karena memori EPROM biasanya memerlukan pernyataan me-.nunggu. Signal berasal dari gerbang NAND yang digunakan untuk memilih bagi-an decoder EPROM sehinggajika EPROM terpilih, maka diperlukan pernyataanmenunggu.

    7-5 PENGONTROL RAM DINAMIKOleh karen a memori RAM dalam mikroprosesor 8086/8088 sering sangat besar,sehingga memerlukan banyak bagian SRAM dengan harga yang besar atau hanyasedikir DRAM (Dinamyc RAM) dengan harga yang lebih sedikit. Memori DRAM,seperti yang dijelaskan secara singkat dalam Bagian 7-1, adalah sangat komplekskarena memerlukan alamat multiplexing dan refreshing. Untungnya, pembuatsirkuit terintegrasi telah menyediakan pengontrol RAM dinamik yang mencakupmultiplexer alamat dan semua waktu sirkuit yang diperlukan untuk refreshing.

  • 5/14/2018 Bab7 Interface Memori

    39/51

    Interface Memori 263

    Bagian dari teks ini mencakup bagian memori DRAM secara mendetail diban-dingkan dengan bagian 7-1 dan menyediakan informasi pada penggunaaan pe-ngontrol RAM dinamik dalam sistem memori.

    DRAM RevisitedSeperti disebutkan dalam Bagian 7-1, bahwa DRAM akan menyatakan data ha-nya untuk 2--4 ms dan memerlukan multiplexing input alamat. Kita telah membi-carakan multiplexer alamat dalam Bagian 7-1, tetapi kita akan menguji operasiDRAM selama refresh secara mendetail di sini.

    Seperti disebutkan sebelumnya, DRAM harus disegarkan kembali secara pe-riodik karena akan menyimpan data secara internal pada kapasitor yang kehilang-an beban/isi dalam periode waktu yang pendek. Untuk menyegarkan kembaliDRAM, isi dari bagian memori harus secara periodik dibaca atau dituliskan. Pem-bacaan atau penulisan akan secara otomatis menyegarkan kembali seluruh bagianbit yang ada di dalam DRAM. Bilangan bit yang disegerkan kembali berdasarkanpada ukuran komponen memori dan organisasi internalnya.

    Cycle penyegaran kembali dapat diselesaikan dengan melakukan pembacaan,penulisan, atau cycle penyegaran kembali khusus yang bukan membaca atau me-nuliskan data. Cycle 'penyegaran kembali secara total adalah internal ke DRAMdan dapat diselesaikan ketika komponen memori lainnya dalam sistem berope-rasi. Tipe penyegaran kembali ini disebut dengan hidden refresh, transparentrefresh, atau kadang-kadang disebut dengan cycle stealing.Untuk melaksanakan penyegaran kembali yang tersembunyi sementara kom-

    ponen memori lainnya berfungsi, cycle RAS akan mengantarkan alamat baris kedalam DRAM untuk memilih baris bit yang akan disegarkan kembali. RAS jugaakan menyebabkan baris terpilih untuk dibaca secara internal dan dituliskan kem-bali ke dalam bit terpilih. Hal ini akan membebani kembali kapasitor internal yangmenyimpan data. Tipe penyegaran kembali ini disembunyikan dari sistem karenaterjadi ketika mikroprosesor sedang membaca atau menuliskan bagian memorilainnya.Organisasi internal DRAM berisi seri baris dan kolom. DRAM 64K x A

    mempunyai 256 kolom, masing-masing berisi 256 bit, atau baris. Jika lokasi me-mori dialamatkan, maka alamat kolom akan memilih kolom (atau kata memoriinternal) dari 256 bit.

  • 5/14/2018 Bab7 Interface Memori

    40/51

    264 Pengantar Mikroprosesor

    A" h,---/ f I-AIO , _~

    Do 4016tD,HWR 1-,--< WRD GSr - < : l S,....::qS

    r--

  • 5/14/2018 Bab7 Interface Memori

    41/51

    Interface Memori 265

    Gambar 7-27 mengilustrasikan timing untuk cycle penyegaran kembali RAS.Perbedaan pokok ada di anatara RAS dan pembacaan atau penulisan yang mene-rapkan "hanya" pada alamat penyegaran kembali, yang biasanya diperoleh dari 7atau 8 bit binary counter. Ukuran counter ditingkatkan pada akhir cycle penyegar-an kembali sehingga seluruh baris akan disegarkan kembali dalam 2 atau 4 ms,tergantung pada tipe DRAM.

    Jika ada 256 baris yang akan disegarkan kembali dalam 4 ms, maka sepertidalam 64K X 4 DRAM, cycle penyegaran kembali harus diaktifkan minimal se-kali setiap 15,6 Il S untuk dapat memenuhispesifikasi penyegaran kembali. Misal-

    GAMBAR 7-27 Diagram timing siklus refresh RAS untuk TMS4464 DRAM.

    nya, akan diperfukan 8086/8088, yang berjalan pada rata-rata clock 5-MHz, 800ns untuk melakukan pembacaan atau penulisan. Oleh karena DRAM harus mem-punyai cycle penyegaran kembali setiap 15,6 I lS , hal ini berarti bahwa untuksetiap 19 memori pembacaan atau penulisan, sistem memori harus menjalankancycle penyegaran kembali atau memori data akan hilang. Hal ini menunjukkanadanya waktu yang hilang sebanyak 5 persen waktu komputer, pengorbanan yangkecil yang harus dibayarkan bagi penghematan yang ditunjukkan oleh pemakaianRAM dinamik.Pengontrol DRAMDari beberapa pengontrol DRAM yang ada, teks ini menitikberatkan padaTMS4500A (lihat Gambar 7-28 untuk diagram block). Seperti halnya seluruhpengontrol dram, TMS4500A berisi alamat multiplexer dan beberapa mekanisme

  • 5/14/2018 Bab7 Interface Memori

    42/51

    266 Pengantar Mikroprosesor

    untuk penyegaran kembali, tetapi tidak seperti yang lainnya, pengontrol ini tidakmemerlukan signal clock frekuensi tinggi yang khusus untuk operasi yang benarselama penyegaran kembali. Perhatikan bahwa TMS4500A mempunyai multiple-xer internal, counter penyegaran kembali, dan semua timing yang diperlukan un-tuk menyelesaikan penyegaran kembali.Deskripsi Pin. Pemahaman yang lengkap atas operasi TMS4500A tergantungpada pemahaman terhadap fungsi pin yang dijelaskan disini :1. RA7-RAo - Row Address Input: pin yang dihubungkan ke bus alamatmikroprosesor. Pin ini sering dihubungkan ke bit bus alamat ArAo.

    CS '7 RASORENl

    ACRACW 'V RASlTIMINGREfREQ AND

    CONTROL'V CAS

    TWSTfSOfSl ROY

    ClK

    AlE .....

    MULTI-PLEXER

    ' V . . .. . .. --tI MAO-MA7

    GAMBAR 7-28 Diagram blok TMS4500A pengontrol dinamik RAM_

  • 5/14/2018 Bab7 Interface Memori

    43/51

    Interface Memori 267

    2. CA7--CAo- Column Address Input: pin yang juga dihubungkan ke bus ala-mat. Jika input alamat baris dihubungkan ke A7-Ao, maka input tersebut akandihubungkan ke Als-Ag. Susunan dari hubungan ini tidak menjadi masalah.

    3. MA7-MAO - Memory Address Output: pin yang dihubungkan secara lang-sung ke pin alamat DRAM ArAo.

    4. ALE - Address Latch Enable Input: pin yang digunakan untuk penguat(latch) 16 input alamat yang diterapkan ke RArRAo dan CA7--CAo,CS, danREN I. Perhatikan bagaimana latches ini mengganti latches alamat yang di-diskusikan dalam Bab 6 jika DRAM hanyalah memori dalam sistem. Olehkarena input ini hams aktif agar dapat menghasilkan cycle, maka dia harusdihubungkan ke ALE.

    S. CS - Chip Select Input: pin yang memulai memori pembacaan dan penulis-an dari DRAM yang dihubungkan ke pengontrol DRAM ketika menjadilogika 0 pada transisi ALE 1 - o .

    6. REN 1 - RAS Enable Iput: pin yang memilih satu dari dua bank DRAMyang dihubungkan ke pengontrol DRAM. (Perhatikan bahwa ada dua outputRAS). 1ika RENI tinggi, maka RAS1 dipilih, dan kemudian rendah, RAS2dipilih.

    7. ACR - Access Control Read Input: pin yang digunakan untuk mengakhirimemori read cycle pada transisi 0 - 1. Pin ini dihubungkan ke mode minimum8086/8088 signal kontrol RD atau signal MRDC untuk operasi mode maksi-mum.

    8. ACW - Access Control Write Input: pin yang digunakan untuk mengakhirimemori write cycle pada transisi 0 - 1. Pin ini dihubungkan ke WR atauMWTC.9. CLK - clock input: pin yang dihubungkan ke sistem clock dari mikroprose-sor 8086/8088.

    10. REFREQ - Refresh Request: pin yang digunakan sebagai input untuk me-mulai refresh cycle atau sebagi output untuk menunjukkan bahwa cyclerefresh internal sedang berjalan.

    11. RASJ, RASo - Row Address Strobe: pin yang dihubungkan ke DRAM inputRAS. Keduanya rendah untuk operasi penyegaran kernbali, tetapi hanya satuyang rendah selama pembacaan atau penulisan. REN 1 akan memilih yangrendah selama operasi memori.

    12. CAS - Column Address Strobe: pin yang dihubungkan ke input CAS keseluruh memori DRAM dalam kedua bank memori.

  • 5/14/2018 Bab7 Interface Memori

    44/51

    268 Pengantar Mikroprosesor

    Minimum Refresh ClocksWiit Refresh Clock Freq. per

    TWST FS, FSo States Rate (MHz) (kHz) Refresh0 0 0 0 External REFREQ 40 0 1 0 cix . 31 1.984 64-95 30 1 0 0 cuc 46 2.944 64-85 30 1 1 0 cuc 61 3.904 64-82 4

    0 0 1 elK .;- 46 2.944 64-85 30 1 1 cuc 61 3.904 64-80 41 0 cuc 76 4.864 64-77 41 1 cuc . 91 5.824 64-88 4

    TABEL 7-4 Seleksi mode untuk pengontrol DRAM

    13. RDY -Ready Output: pin yang dihubungkan ke input RDY dari generatorclock 8284A. RDY akan menjadi aktif jika pengontrol DRAM melakukancycle refresh internal. .

    14. TWST - Timing/Wait Strap Input: pin yang digunakan untuk memilih(wait) dan atau hambatan pengalokasian waktu tertentu jika digunakan de-ngan input FSI dan FSo. Logika 1 pada pin ini akan menyisipkan satu pernya-taan menunggu untuk setiap akses memori.

    15. FSo, FSI - Frequency Select Input: pin yang digunakan untuk memilihberbagai mode dan pilihan frekuensi (lihat Tabel 7-4).

    Operasi TMS4500AGambar 7-29 mengilustrasikan hubungan pokok dari pengontrol DRAM ke busesdari mikroprosesor 8088 dalam susunan mode minimum. Di sini pin RD dan WRdihubungkan ke pin ACR dan ACW, secara berurutan. Input CS dihubungkan kegerbang NAND 4-input yang digunakan untuk mengartikan kode tiga bit alamatyang paling penting. RENI dihubungkan ke hubungan bus alamat AI6 sehinggaakan memilih satu bank memori atau lainnya. Jika AI6 tinggi, maka bank yangdihubungkan ke RASI akan dipilih, dan jika rendah, maka bank yang menghu-bungkan ke RASo akan dipilih. Dalam contoh ini, dua bank dari 64K x 8 DRAMdipilih untuk total 128K x 8 memori. Rentangan alamat ini memulai pada lokasiOOOOOOHan berkembang hingga lokasi IFFFFH.

  • 5/14/2018 Bab7 Interface Memori

    45/51

    Interface Memori 269

    TMS4500AA . ) RA"~ tAddress A, RA7 44~

    bu s Ag CA"~ t CASRAS,A'5 CA RAS

    ALE ALEA'6 REN,RO ACR RAS" RASWR ACWA"A,s CS 4464A'9ROY ROYCLK CLKTWST FS, FS"

    IK+5V

    GAMBAR 7-29 TMS4500A pengontrol DRAM yang digunakan untuk menghubungkan antar-muka dengan 128K byte DRAM. Di sini empat TMS4464 DRAM memberikan memori yangterletak pada lokasi OOOOOH-IFFFFH.

    Pemrograman pin TWST, FSJ, dan FSo dipilih (0, 1, dan 1) sehingga tidakada penungguan, penyegaran kembali akan terjadi setiap 61 jam, dan ada 4 jamuntuk setiap penyegaran kembali. Hal ini akan meyakinkan bahwa penyegarankembali muncul sekali setiap 12,2 ms, yang lebih baik toleransinya dari pada15.6 ms yang dihitung sebelumnya.Jika signal clocking internal dibuat untuk setiap 61 periode clock, maka akanterjadi permintaan penyegaran internal kembali. Permintaan ini ditunda hingga

    cycle bus tertentu lengkap, yang dapat menambah empat clock lainnya ke waktutersebut. Jika permintaan akhirnya dipenuhi, maka pin RDY akan ke arab logika

  • 5/14/2018 Bab7 Interface Memori

    46/51

    270 Pengantar Mikroprosesor

    ACCESS REFRESH/ACCESS GRANT

    2 I 3 4 I 3 4CLK

    ALEJt\1 I V \ I I hlI~ I I I I I tCX I / 1 } IIu I I IMAX I COLUMN REFRESH COLUMNI I I I IR A S I I~~II / i \ ! IAS / 1

    ' R ' E F R e O \'\-:\~\\\~ \ I I I II \ 1OY I I II I I IGAMBAR 7-30 Timing untuk TMS4500A pengontrol dinamik RAM.

    O. Hal ini rnenyebabkan pemyataan rnenunggu disisipkan ketika pengontrolDRAM menyegarkan memori kembali. Setelah penyegaran kembali lengkap,maka bus bebas untuk rnelakukan pembacaan atau penulisan hingga dimintauntuk penyegaran kernbali berikutnya.Gambar 7-30 menunjukkan diagram timing untuk TMS4500A selama perm in-

    taan dan penyelesaian penyegaran kernbali. Perhatikan bahwa baris ROY akanrendah untuk meminta pemyataan rnenunggu selama operasi penyegaran kernbali.

    7-6 RINGKASAN1. Seluruh piranti rnemori mempunyai input alarnat : input dan output data, atauhanya output: pin untuk pilihan dan satu pin atau lebih yang mengontrol ope-rasi memori.

  • 5/14/2018 Bab7 Interface Memori

    47/51

    Interface Memori 271

    2. Hubungan alamat pada komponen memori digunakan untuk memilih satudari lokasi memori dalam,suatu pirantiibagian. Sepuluh pin alamat mempu-nyai 1,024 kombinasi dan oleh karena itu dapat mengalamatkan 1,024 lokasimemori yang berbeda.

    3. Hubungan data pada memori digunakan untuk memasukkan informasi untukdisimpan dalam lokasi memori dan juga untuk memanggil informasi yangdibaca dari lokasi memori. Pabrik membuat daftar memorinya sebagai, mi-salnya, 4K x 4, yang berarti bahwa suatu piranti mempunyai lokasi memori4K (4.09) dan 4 bit disimpan dalam masing-masing lokasi.

    4. Pilihan memori diselesaikan melalui pin chip selection (CS) pada beberapaRAM atau pin chip enable (CE) pada beberapa EPROM atau memori ROM.

    5. Fungsi memori dipilih oleh pin output enable (OE) untuk pembacaan datadan pin write enable (WE) untuk penulisan data.

    6. Memori EPROM diprogram oleh programer EPROM dan dapat dihapus jikaditampilkan ke sinar ultraviolet. Sekarang ini EPROM ada dalam ukuran darilK x 8 hingga 64K x 8 dan yang lebih besar lag~.

    7. Statik RAM (SRAM) akan menahan data sepanjang sistem power supplyhubungkan. Tipe memori ini ada dalam ukuran hingga 2K x 8.

    8. Dinamik ~M (DRAM) akan menahan data hanya untuk periode yang pen-dek, biasanya 2 - 4 ms. Hal ini akan menimbulkan problem untuk perancangsistem memori karena DRAM harus disegarkan kernbali secara periodik.DRAM juga mempunyai input alamat multiplexed yang memerlukan multi-plexer ekstemal untuk menyesiakan setiap setengah alamat pada waktu yangsemestinya.

    9. Decoder alamat memori akan memilih EPROM atau RAM pada area tertentudari memori. Secara umum ditemukan decoder alamat yang mencakup74LS138 3-hingga-8 baris decoder, 74LS139 2-hingga-4 baris decoder, danlogika seleksi terprogram dalam bentuk PROM.

    10. Decoder alamat PROM untuk mikroprosesor sperti 8088 atau 8086 cende-rung dalam banyak kasus untuk mengurangi bilangan sirkuit terintegrasiyang diperlukan untuk melengkapi fungsi sistem memori.

    11. Interface memori mode minimum berisi 20 alamat baris, 8 baris data, dan 3baris kontrol: RD, WR, dan 101M. Memori 8088 akan berfungsi secara benarhanyajika seluruh baris tersebut digunakan.

    12. Kecepatan akses dari EPROM harus sesuai dengan mikroprosesor yang akandiinterface. Banyak EPROM yang ada sekarang ini mempunyai waktu akses

  • 5/14/2018 Bab7 Interface Memori

    48/51

    272 Pengantar Mikroprosesor

    dari 450 ns, yang terlalu lambat untuk 5-MHz 8088. Untuk mengatasi prob-lem ini, pemyataan menunggu hams disisipkan untuk meningkatkan waktuakses memori hingga 660 ns.

    13. Pengecek paritas sekarang ini telah menjadi hal yang biasa pada beberapasistem mikro-komputer yang berbasis 8086 8088. Bit ekstra disimpan dengansetiap byte memori, dengan membuat memori 9 bit labarnya, sebagai peng-ganti dari 8 bit.

    14. Karakteristik koreksi kesalahan juga telah ada untuk sistem memori, tetapikarakteristik ini memerlukan tempat penyimpanan dari beberapa bit yanglebih banyak lagi. Jika bilangan 8-bit disimpan dengan sirkuit koreksi kesa-lahan, maka sebenamya akan memerlukan 13 bit memori; 5 untuk codechecking kesalahan dan 8 untuk data. Hampir semua koreksi kesalahan yangberintegrasi dengan sirkuit dapat hanya membetulkan kesalahan bit-tunggaI.

    15. Interface memori 8086 mempunyai 16-bit bus data dan berisi pin kontrolMIlO, dimana 8088 mempunyai 8-bit bus data dan berisi pin IQIM. Sebagaitambahan pada perubahan ini, ada signal kontrol ekstra, bus high enable(BHE).16. Memori 8086 diorganisasikan dalam dua 8-bit bank: bank tinggi dan bankrendah. Bank memori yang tinggi dapat digunakan dengan signal kontrolBHE dan bank rendah dengan signal alamat Ao.

    17. Dua skema yang umum untuk pemilihan bank dalam sistem berdasarkanpada 8086 mencakup (1) decoder terpisah untuk setiap bank dan (2) signalkontrol WR terpisah untuk setiap bank dengan decoder umum.

    18. Pengontrol RAM dinamik dirancang untuk mengontrol komponen memoriDRAM. Banyak pengontrol DRAM sekarang ini yang berisi multiplexer ala-mat, refresh counter, dan sirkuit yang diperlukan untuk melakukan penyegar-an ulang memori DRAM periodik.

    7-7 PERTANYAAN DAN SOAL1. Tipe hubungan apa yang umum untuk semua piranti memori?2. BuatIah daftar kata-kata yang ditemukan dalam setiap piranti memori untuk

    bilangan hubungan alamat sebagai berikut :a. 8

  • 5/14/2018 Bab7 Interface Memori

    49/51

    Interface Memori 273

    b. 11c. 12d. 13

    3, Buatlah daftar bilangan item data yang disimpan dalam setiap piranti memorisebagai berikut dan bilangan bit dalam setiap data:a. 2Kx4b. lK xlc. 4K x 8d. 16Kx 1e. 64Kx4

    4. Apa tujuan dari pin CS atau CE pada komponen memori?5. Apa tujuan dari pin OE pada piranti memori?6. Apa tujuan dari pin WE atau R IW pada RAM?7. Berapa isi kata tempat penyimpanan dari piranti memori EPROM berikut

    ini?a. 2708b. 2716c. 2732d. 2764e. 27128 ,8. Mengapa EPROM 450-ns tidak akan bekerja secara langsung dengan 80885-MHz?

    9. SRAM adalah akronim untuk tipe piranti apa?10. Memori 4016 mempunyai pin G, pin S, dan pin w. Untuk apa pin tersebut

    digunakan dalam RAM ini?11. Berapa banyak waktu akses memori yang diperlukan oleh RAM 4016 yang

    paling lambat?12. DRAM adalah akronim untuk tipe piranti apa?13. TMS4464 mempunyai delapan input alamat, yaitu 64K DRAM. Jelaskan

    bagaimana 16-bit alamat memori ditekan ke dalam delapan input alamat.14. Apa tujuan dari input CAS dan RAS dari DRAM?15. Berapa banyak waktu yang diperlukan untuk menyegarkan kembali DRAM

    tipikal?16. Mengapa decoder alamat memori penting?

  • 5/14/2018 Bab7 Interface Memori

    50/51

    274 Pengantar Mikroprosesor

    17. Ubahlah decoder gerbang NAND dari Gambar 7-12 sehingga akan memilihmemori untuk rentangan alamat DF800H - DFFFFH.18. Ubahlah decoder gerbang NAND dalam Gambar 7-12 sehingga akan memi-

    lih memori untuk rentangan alamat 40000H - 407FFH.19. Jika input E tinggi, dan E2 dan E3 keduanay rendah, apa yang terjadi pada

    output dari decoder baris 74LS 1383 - hingga - 8?20. Ubahlah sirkuit dari Gambar 7-14 sehingga akan mengalamatkan rentangan

    memori 70000H - 7FFFFH.21. Ubahlah sirkuit dari Gambar 7-14 sehingga akan mengalamatkan rentanganmemori 40000H - 4FFFFH.22. Gambarkan decoder 74LS139 !23. Mengapa decoder alamat PROM sering ditemukan dalam sistem memori?24. Programlah kembali PROM dalarn Tabel 7-1 sehingga akan membaca ren-

    tangan alamat memori 80000H - 8FFFFH.25. Programlah kembali PROM dalam Tabel 7-1 sehingga akan membaca ren-

    tangan alamat memori 30000H - 3FFF,FH.26. Signal kontrol mode minimum RD dan WR ditempatkan oleh apa untuk me-

    ngontrol signal dalam mode maksimum?27. Ubahlah sirkuit dari Gambar 7-17 sehingga akan memilih pada lokasi

    68000H - 6BFFFH.28. Ubahlah sirkuit dari Gambar 7-17 sehingga akan memilih delapan 27648K x

    8 EPROM pada lokasi memori 10000H - IFFFFH.29. Tambahkan decoder lain ke sirkuit dari Gambar 7-18 sehingga tambahan

    delapan 4016 2K x 8 SRAM ditambahkan pada lokasi 10000H - 13FFFFH.30. Rancanglah kembali decoder utama dalam Gambar 7-18 sehingga penga-

    lamatan memori akan memulai pada lokasi 80000H.31. Jelasakan bagaimana keseimbangan yang aneh disimpan dalam sistem me-

    mori dan bagaimana di-cek?32. Koreksi kesalahan 74LS636 dan sirkuit deteksi menyimpan code cek dengan

    setiap byte data. Berapa banyak bit yang ada pada code cek terse but?33. Apa tujuan dari pin SEF pada 74LS636?34. 74LS363 akan membetulkan bit yang salah.35. Garis besar perbedaan pokok antara buses dari mikroprosesor 8086 dan 8088.36. Apa tujuan dari BHE dan pin Ao pada mikroprosesor 8086?37. Dua metode apa yang digunakan untuk memilih memori dalam mikroprose-

    sor 8086?

  • 5/14/2018 Bab7 Interface Memori

    51/51

    Interface Memori 275

    38. Jika BHEadalah logka 0, maka bank memori akan dipilih.39. Jika Ao adalah logika 0, maka bank memori __ akan dipilih.40. Mengapa strobe (RD) bank pembacaan terpisah perlu dikembangkan ketika

    interfacing memori ke 8086?41. Ubahlah sirkuit dari Gambar 7-27 sehingga EPROM diletakkan pada ren-

    tangan memori COOOOH-CFFFFH dan RAM ditempatkan pada rentanganmemori 30000H - 33FFFH.

    42. Apakah cycle RAS-only itu?43. Jika DRAM disegarkan kembali, dapatkan dilakukan ketika bagian memori

    lainnya sedang beroperasi?44. Jika 16K x 1 DRAM memerlukan 2 ms untuk penyegaran kembali dan

    mempunyai 128 baris untuk disegarkan kembali tidak lebih dari waktu __harus selesai sebelum baris lain disegarkan kembali.

    45. Dimana alamat memori diterapkan untuk pengontrol DRAM TMS4500A?46. Apa tujuan dari pin RENJ pada TMS4500A?47. SEcara normal apa yang dihubungkan ke pin ACW dari TMS4500A?48. Kondisi operasi yang bagaimana pada TMS4500A yang merupakan TWST

    yang digunakan untuk memilih?49. Ubahlah sirkuit dari Gambar 7-29 sehingga akan memilih rentangan alamat

    memori 40000H - 5FFFFH.