Жадтың қолжетімділікке дейінгі кешігуі және CAS жадтылығы
CAS latency
Жаd RAM-дегі деректі оқу кешігуі: CAS latency (CL) – READ командасы мен деректің қолжетімді болуы арасындағы уақыт кешігуі. SDRAM-де сағат циклдарымен өлшенеді.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Деректерді оқу командасы мен компьютердің RAM-де деректердің қолжетімділігі арасындағы уақыт кешігуі.
Time delay between data read command and availability of data in a computer's RAM
Адрестік колоннаның латенттілігі, сонымен қатар CAS латенттілігі немесе CL деп аталады, READ командасы мен деректердің қолжетімділігі арасындағы сағат циклдарындағы кешігуді білдіреді. Асинхронды DRAM-да бұл интервал наносекундтармен (абсолютті уақытпен) көрсетіледі. Синхронды DRAM-да интервал сағат циклдарымен көрсетіледі. Латенттік уақыт абсолютті уақытқа емес, сағат импульстарының санына байланысты болғандықтан, SDRAM модулінің CAS оқиғасына жауап беру уақыты, сағат жиілігі өзгеретін болса, бірдей модульді пайдаланғанда әртүрлі болуы мүмкін.
Column address strobe latency, also called CAS latency or CL, is the delay in clock cycles between the READ command and the moment data is available. In asynchronous DRAM, the interval is specified in nanoseconds (absolute time). In synchronous DRAM, the interval is specified in clock cycles. Because the latency is dependent upon a number of clock ticks instead of absolute time, the actual time for an SDRAM module to respond to a CAS event might vary between uses of the same module if the clock rate differs.
RAM операциясының аясы
Динамикалық жад тік төртбұрышты массив түрінде ұйымдастырылған. Әрбір қатар көлденең сөз желісі арқылы таңдалады. Белгілі бір қатар бойымен логикалық жоғары сигнал жіберу, сол қатардағы MOSFET-терді қосып, әрбір сақтау конденсаторын тиісті тік бит желісіне қосады. Әрбір бит желісіне сезімтал күшейткіш қосылған, ол сақтау конденсаторының шағын кернеу өзгерісін күшейтеді. Бұл күшейтілген сигнал DRAM чипінен шығарылады, сондай-ақ қатарды жаңарту үшін бит желісі арқылы қайта жіберіледі. Егер ешқандай сөз желісі белсенді болмаса, массив күшін жояды және бит желілері жоғары және төмен арасындағы кернеумен алдын ала зарядталған күйде сақталады. Бұл беймәлім сигнал қатар белсендірілген кезде сақтау конденсаторымен жоғары немесе төмен бұрылады. Жадқа қол жеткізу үшін алдымен қатар таңдалып, сезімтал күшейткіштерге жүктелуі керек. Содан кейін бұл қатар белсенді болады және бағандарға оқу немесе жазу үшін қол жеткізуге болады. CAS жасырын уақыты – бұл бағана адресі мен бағана адресі импульсы жад модуліне берілгеннен бастап, жад модулі тиісті деректерді қолжетімді еткенге дейінгі кешігу. Қажетті қатар белсенді болуы керек; әйтпесе, қосымша уақыт қажет. Мысалы, әдеттегі 1 ГиБ SDRAM жад модулі сегіз бөлек бір гибиттік DRAM чипін қамтуы мүмкін, олардың әрқайсысы 128 Мб сақтау кеңістігін ұсынады. Әрбір чип 227=128 Мибиттен тұратын сегіз банкке бөлінеді, олардың әрқайсысы жеке DRAM массивін құрайды. Әрбір банк 214=16384 қатардан тұрады, олардың әрқайсысы 213=8192 биттен тұрады. Бір байт жадқа (әр чиптен; бүкіл DIMM-нен 64 бит) 3 биттік банк нөмірі, 14 биттік қатар адресі және 13 биттік баған адресі арқылы қол жеткізіледі.
Dynamic RAM is arranged in a rectangular array. Each row is selected by a horizontal word line. Sending a logical high signal along a given row enables the MOSFETs present in that row, connecting each storage capacitor to its corresponding vertical bit line. Each bit line is connected to a sense amplifier that amplifies the small voltage change produced by the storage capacitor. This amplified signal is then output from the DRAM chip as well as driven back up the bit line to refresh the row. When no word line is active, the array is idle and the bit lines are held in a precharged state, with a voltage halfway between high and low. This indeterminate signal is deflected towards high or low by the storage capacitor when a row is made active. To access memory, a row must first be selected and loaded into the sense amplifiers. This row is then active, and columns may be accessed for read or write. The CAS latency is the delay between the time at which the column address and the column address strobe signal are presented to the memory module and the time at which the corresponding data is made available by the memory module. The desired row must already be active; if it is not, additional time is required. As an example, a typical 1 GiB SDRAM memory module might contain eight separate one gibibit DRAM chips, each offering 128 MiB of storage space. Each chip is divided internally into eight banks of 227=128 Mibits, each of which composes a separate DRAM array. Each bank contains 214=16384 rows of 213=8192 bits each. One byte of memory (from each chip; 64 bits total from the whole DIMM) is accessed by supplying a 3 bit bank number, a 14 bit row address, and a 13 bit column address.
Жадқа қол жеткізу жылдамдығына әсері
Асинхронды DRAM-де жадқа жүйелік шинадан бөлек, сағат емес, белгіленген уақытқа негізделген жад контроллері жад шинасы арқылы кіретін. Ал синхронды DRAM-да CAS латенттілігі сағаттық жылдамдыққа байланысты. Сәйкесінше, SDRAM жад модулінің CAS латенттілігі абсолюттік уақыттың орнына сағат импульстарында көрсетіледі. Жады модульдерінде бірнеше ішкі банктер бар, және деректерді басқасына кірудің кідірісі кезінде бірінен шығаруға болады, сондықтан шығыс тізбектері CAS кідірісіне қарамастан 100% жұмыс істеуі мүмкін; қолжетімді ең жоғары өткізу қабілеті тек сағат жылдамдығымен анықталады. Өкінішке орай, бұл ең жоғары өткізу қабілетін тек оқуға болатын деректердің мекенжайы жеткілікті түрде алдын ала белгілі болған жағдайда ғана қол жеткізуге болады; егер деректерге қол жеткізу мекенжайы болжауға болмайтын болса, тізбек тоқтауы пайда болуы мүмкін, нәтижесінде өткізу қабілеті төмендеуі мүмкін. Толық белгісіз жадқа қол жеткізу (рандомды қол жеткізу) үшін тиісті кідіріс – кез келген ашық қатарды жабу уақыты, содан кейін қажетті қатарды ашу уақыты, одан кейін деректерді оқу үшін CAS кідірісі. Бірақ кеңістіктік жақындыққа байланысты, бір қатарда бірнеше сөздерге қол жеткізу әдеттегідей. Бұл жағдайда, өткен уақытты анықтайтын – CAS латенттілігі ғана. Қазіргі DRAM модульдерінің CAS латенттілігі уақыт емес, сағат импульстарында көрсетілгендіктен, әртүрлі сағат жылдамдықтарындағы латенттілікті салыстырғанда, әділ салыстыру үшін латенттілікті абсолюттік уақытқа ауыстыру қажет; сағаттың жылдамдығы жоғары болса, CAS латенттілігі уақыты да аз болуы мүмкін. Сол сияқты, төмендетілген жад модулінің CAS латенттілігінің циклдар саны сол CAS латенттілігі уақытын сақтау үшін азайтылуы мүмкін. Екі еселік деректер жылдамдығы (DDR) RAM бір сағат циклында екі рет дерек алмасады және әдетте осы дерек алмасу жылдамдығымен сипатталады. CAS латенттілігі сағаттың өсу және төмендеу жиектерінде болатын дерек алмасулар емес, сағаттық циклдарда көрсетілгендіктен, CAS латенттілігі уақытын есептеу үшін сағаттық жылдамдықты (дерек алмасу жылдамдығының жартысы) пайдалануды қамтамасыз ету маңызды. Тағы бір күрделі фактор – жарылыспен дерек алмасу. Қазіргі заманғы микропроцессордың кэш желісі 64 байтқа дейін болуы мүмкін, оны толтыру үшін 64 биттік (сегіз байт) жадтан сегіз дерек алмасу қажет. CAS латенттілігі жадтың алғашқы сөзін беру уақытын ғана дәл өлшеуге болады; барлық сегіз сөзді беру уақыты деректерді беру жылдамдығына байланысты. Бақытымызға орай, процессор барлық сегіз сөзді күтуге міндетті емес; жарылыс әдетте бірінші маңызды сөзбен жіберіледі, ал бірінші маңызды сөзді микропроцессор дереу пайдалана алады. Төмендегі кестеде деректерді беру жылдамдығы секундына миллион дерек алмасу (мегатрансферт) (МТ/с) ретінде көрсетілген, ал сағаттық жылдамдықтар МГц-те, секундына миллион цикл ретінде көрсетілген.
With asynchronous DRAM, memory was accessed by a memory controller on the memory bus based on a set timing rather than a clock, and was separate from the system bus. Synchronous DRAM, however, has a CAS latency that is dependent upon the clock rate. Accordingly, the CAS latency of an SDRAM memory module is specified in clock ticks instead of absolute time. Because memory modules have multiple internal banks, and data can be output from one during access latency for another, the output pins can be kept 100% busy regardless of the CAS latency through pipelining; the maximum attainable bandwidth is determined solely by the clock speed. Unfortunately, this maximum bandwidth can only be attained if the address of the data to be read is known long enough in advance; if the address of the data being accessed is not predictable, pipeline stalls can occur, resulting in a loss of bandwidth. For a completely unknown memory access (AKA Random access), the relevant latency is the time to close any open row, plus the time to open the desired row, followed by the CAS latency to read data from it. Due to spatial locality, however, it is common to access several words in the same row. In this case, the CAS latency alone determines the elapsed time. Because modern DRAM modules' CAS latencies are specified in clock ticks instead of time, when comparing latencies at different clock speeds, latencies must be translated into absolute times to make a fair comparison; a higher numerical CAS latency may still be less time if the clock is faster. Likewise, a memory module which is underclocked could have its CAS latency cycle count reduced to preserve the same CAS latency time. Double data rate (DDR) RAM performs two transfers per clock cycle, and it is usually described by this transfer rate. Because the CAS latency is specified in clock cycles, and not transfers (which occur on both the rising and falling edges of the clock), it is important to ensure it is the clock rate (half of the transfer rate) which is being used to compute CAS latency times. Another complicating factor is the use of burst transfers. A modern microprocessor might have a cache line size of 64 bytes, requiring eight transfers from a 64 bit wide (eight bytes) memory to fill. The CAS latency can only accurately measure the time to transfer the first word of memory; the time to transfer all eight words depends on the data transfer rate as well. Fortunately, the processor typically does not need to wait for all eight words; the burst is usually sent in critical word first order, and the first critical word can be used by the microprocessor immediately. In the table below, data rates are given in million transfers—also known as megatransfers—per second (MT/s), while clock rates are given in MHz, million cycles per second.
Жады уақытын белгілеу мысалдары
+Жад уақытын көрсету мысалдары (тек CAS жалдамы) Ұрпақ түрі Деректер жылдамдығы Өткізу уақыты Команда жылдамдығы Цикл уақыты CAS жалдамы Бірінші сөз Төртінші сөз Сегізінші сөз SDRAM PC100 100 МТ/с 10.000 нс 100 МГц 10.000 нс 2 20.00 нс 50.00 нс 90.00 нс PC133 133 МТ/с 7.500 нс 133 МГц 7.500 нс 3 22.50 нс 45.00 нс 75.00 нс DDR SDRAM DDR2 SDRAM DDR3 SDRAM DDR4 SDRAM DDR5 SDRAM Ұрпақ түрі Деректер жылдамдығы Өткізу уақыты Команда жылдамдығы Цикл уақыты CAS жалдамы Бірінші сөз Төртінші сөз Сегізінші сөз
+Memory timing examples (CAS latency only) Generation Type Data rate Transfer time Command rate Cycle time CAS latency First word Fourth word Eighth word SDRAM PC100 100 MT/s 10.000 ns 100 MHz 10.000 ns 2 20.00 ns 50.00 ns 90.00 ns PC133 133 MT/s 7.500 ns 133 MHz 7.500 ns 3 22.50 ns 45.00 ns 75.00 ns DDR SDRAM DDR2 SDRAM DDR3 SDRAM DDR4 SDRAM DDR5 SDRAM Generation Type Data rate Transfer time Command rate Cycle time CAS latency First word Fourth word Eighth word