OpenCores
URL https://opencores.org/ocsvn/pcie_ds_dma/pcie_ds_dma/trunk

Subversion Repositories pcie_ds_dma

[/] [pcie_ds_dma/] [trunk/] [projects/] [ml605_lx240t_core/] [src/] [doc/] [core/] [block_pe_ext_fifo.htm] - Rev 2

Compare with Previous | Blame | View Log

<Html>
<Head>
 <Title>Блок PE_EXT_FIFO</Title>
 <Meta Http-equiv="Content-Type" Content="text/html; Charset=windows-1251">
 <Link Rel="StyleSheet" Type="text/css" Href="style.css">
</Head>
<Body LeftMargin="5" TopMargin="5" BgColor="#ffffff">
<h1><span lang="ru">Блок </span>PE_EXT_FIFO</h1>
Версия документа: <span lang="ru">1</span>.<span lang="ru">0</span><hr>
<h2>Общие сведения</h2>
<table border="0" width="90%" cellpadding="6" cellspacing="1" height="135">
  <tr>
    <td width="17%" valign="top" height="14">
<b>
Назначение</b></td>
    <td width="83%" height="14" valign="top">	<span lang="ru">Управление 
	каналом </span>FIFO </td>
  </tr>
  <tr>
    <td width="17%" height="14" valign="top">
 
<b>
 
Модификация</b></td>
    <td width="83%" height="14" valign="top">	1<span lang="ru">&nbsp;- 
	только режим автоинициализации</span></td>
  </tr>
  <tr>
    <td width="17%" height="14" valign="top"><b>Версия</b></td>
    <td width="83%" height="14" valign="top">		<span lang="ru">1</span>.0</td>
  </tr>
  <tr>
    <td width="17%" height="14" valign="top"><b>ID</b></td>
    <td width="83%" height="14" valign="top">		<span lang="en-us">0x18</span></td>
  </tr>
  </table>
&nbsp;
 
 
<h2>Состав регистров</h2>
<table border="2" width="90%" bordercolorlight="#000000" cellspacing="1" bordercolordark="#000000" cellpadding="2" style="border-collapse: collapse">
  <tr>
    <td width="13%" align="center"><b>Номер</b></td>
    <td width="18%" align="center"><b>Название</b></td>
    <td width="69%" colspan="2"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td width="100%" align="center" colspan="4">
      <p align="left">&nbsp;<span lang="ru"> Константы</span></td>
  </tr>
  <tr>
    <td width="13%" align="center">0</td>
    <td width="18%" align="center"><a href="#Регистр BLOCK_ID">BLOCK_ID</a></td>
    <td width="10%" align="center">0x1018</td>
    <td width="58%">&nbsp;<span lang="ru">Идентификатор блока управления</span></td>
  </tr>
  <tr>
    <td width="13%" align="center">1</td>
    <td width="18%" align="center"><a href="#Регистр BLOCK_VER">BLOCK_VER</a></td>
    <td width="10%" align="center">0x0100</td>
    <td width="58%">&nbsp;<span lang="ru">Версия блока управления</span></td>
  </tr>
  <tr>
    <td width="13%" align="center">2</td>
    <td width="18%" align="center"><a href="#Регистр FIFO_ID">FIFO_ID</a></td>
    <td width="10%" align="center">0x3400</td>
    <td width="58%">&nbsp;<span lang="ru">Идентификатор </span>FIFO</td>
  </tr>
  <tr>
    <td width="13%" align="center">3</td>
    <td width="18%" align="center"><a href="#Регистр FIFO_NUMBER">FIFO_NUMBER</a></td>
    <td width="10%" align="center">*</td>
    <td width="58%">&nbsp;<span lang="ru">Номер </span>FIFO</td>
  </tr>
  <tr>
    <td width="13%" align="center" height="21">4</td>
    <td width="18%" align="center" height="21"><a href="#Регистр RESOURCE">RESOURCE</a></td>
    <td width="10%" align="center" height="21"><span lang="ru">0</span>x0002</td>
    <td width="58%" height="21">&nbsp;<span lang="ru">Поддерживаемые режимы 
	работы</span></td>
  </tr>
  <tr>
    <td width="13%" align="center">5</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="10%" align="center">&nbsp;</td>
    <td width="58%">&nbsp;</td>
  </tr>
  <tr>
    <td width="13%" align="center">6</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="10%" align="center">&nbsp;</td>
    <td width="58%">&nbsp;</td>
  </tr>
  <tr>
    <td width="13%" align="center">7</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="10%" align="center">&nbsp;</td>
    <td width="58%">&nbsp;</td>
  </tr>
  <tr>
    <td width="100%" align="left" colspan="4">&nbsp;&nbsp;
      <span lang="ru">Командные регистры</span></td>
  </tr>
  <tr>
    <td width="13%" align="center"><span lang="ru">8</span></td>
    <td width="18%" align="center"><a href="#Регистр DMA_MODE">DMA_MODE</a></td>
    <td width="69%" colspan="2"><span lang="ru">Режим работы контроллера </span>
	DMA</td>
  </tr>
  <tr>
    <td width="13%" align="center"><span lang="ru">9</span></td>
    <td width="18%" align="center"><a href="#Регистр DMA_CTRL">DMA_CTRL</a></td>
    <td width="69%" colspan="2"><span lang="ru">Управление контроллером </span>
	DMA</td>
  </tr>
  <tr>
    <td width="13%" align="center">0x0A</td>
    <td width="18%" align="center"><a href="#Регистр BLOCK_CNT">BLOCK_CNT</a></td>
    <td width="69%" colspan="2"><span lang="ru">Число блоков для передачи</span></td>
  </tr>
  <tr>
    <td width="13%" align="center">0x0B</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td width="13%" align="center">0x0C</td>
    <td width="18%" align="center">
	&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td width="13%" align="center">0x0D</td>
    <td width="18%" align="center">
	&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td width="13%" align="center">0x0E</td>
    <td width="18%" align="center">
	&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td width="13%" align="center">0x0F</td>
    <td width="18%" align="center">
	&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td width="100%" align="center" colspan="4">
	<p align="left"><span lang="ru">&nbsp;&nbsp;&nbsp; Непосредственные регистры</span></td>
  </tr>
	<tr>
    <td width="13%" align="center"><span lang="ru">0</span>x10</td>
    <td width="18%" align="center"><a href="#Регистр STATUS">STATUS</a> </td>
    <td width="69%" colspan="2"><span lang="ru">&nbsp;Регистр состояния</span></td>
  </tr>
	<tr>
    <td width="13%" align="center">0x11</td>
    <td width="18%" align="center"><a href="#Регистр FLAG_CLR">FLAG_CLR</a></td>
    <td width="69%" colspan="2">&nbsp;<span lang="ru">Регистр сброса флагов</span></td>
  </tr>
	<tr>
    <td width="13%" align="center">0x12</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
	<tr>
    <td width="13%" align="center">0x13</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
	<tr>
    <td width="13%" align="center"><span lang="ru">0</span>x14</td>
    <td width="18%" align="center"><a href="#Регистры PCI_ADRL, PCI_ADRH">
	PCI_ADRL</a></td>
    <td width="69%" colspan="2">&nbsp;<span lang="ru">Адрес на </span>PCI
	<span lang="ru">шине. Младшее слово</span></td>
  </tr>
	<tr>
    <td width="13%" align="center">0x15</td>
    <td width="18%" align="center"><a href="#Регистры PCI_ADRL, PCI_ADRH">
	PCI_ADRH</a></td>
    <td width="69%" colspan="2">&nbsp;<span lang="ru">Адрес на </span>PCI
	<span lang="ru">шине. Старшее слово</span></td>
  </tr>
	<tr>
    <td width="13%" align="center">0x16</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
	<tr>
    <td width="13%" align="center">0x17</td>
    <td width="18%" align="center"><a href="#Регистр LOCAL_ADR">LOCAL_ADR</a></td>
    <td width="69%" colspan="2">&nbsp;<span lang="ru">Адрес на локальной шине</span></td>
  </tr>
	<tr>
    <td width="13%" align="center">0x18</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
	<tr>
    <td width="13%" align="center"><span lang="ru">0</span>x19</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
	<tr>
    <td width="13%" align="center">0x1A</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
	<tr>
    <td width="13%" align="center">0x1B</td>
    <td width="18%" align="center">&nbsp;</td>
    <td width="69%" colspan="2">&nbsp;</td>
  </tr>
</table>
<br>
 
<h2>Описание</h2>
 
 
<p><span lang="ru">Блок </span>PE<span lang="ru">_</span><span lang="en-us">EXT_</span>FIFO <span lang="ru">
предназначен для управления </span>двунаправленным FIFO. Направление обмена 
устанавливается в регистре <span lang="en-us">DMA_CTRL </span>и в дескрипторе 
блока автоинициализации.</p>
<p><span lang="ru">Алгоритм работы в режиме автоинициализации:</span></p>
<ul>
	<li><span lang="ru">Составить цепочку дескрипторов, которая описывает 
	цепочку передаваемых блоков</span></li>
	<li><span lang="ru">Записать 0 в регистр&nbsp; </span>DMA_CTRL</li>
	<li><span lang="ru">Сбросить внутреннее </span>FIFO <span lang="ru">
	контроллера </span>DMA - <span lang="ru">записать 1 в поле </span>RESET_FIFO
	<span lang="ru">регистра </span>DMA_CTRL <span lang="ru">и затем сбросить
	</span>RESET_FIFO</li>
	<li><span lang="ru">Задать требуемый режим работы в регистре </span>DMA_MODE</li>
	<li><span lang="ru">Записать адрес начального дескриптора в регистр </span>
	PCI_ADRL</li>
	<li><span lang="ru">Записать локальный адрес в регистр </span>LOCAL_ADR</li>
	<li><span lang="ru">Разрешить </span>DMA <span lang="ru">передачу: 
	установить бит
	</span>DMA_START <span lang="ru">в регистре </span>DMA_CTRL</li>
	<li><span lang="ru">Ожидать завершения передачи блока с битом разрешения 
	формирования флага </span>DMA_EOT<span lang="ru">: ждать появления 
	</span>DMA_EOT&nbsp;&nbsp; <span lang="ru">в регистре </span>STAUS <span lang="ru">или прерывания.&nbsp; </span></li>
	<li><span lang="ru">Сбросить флаг </span>DMA_EOT <span lang="ru">и 
	прерывание: записать 0</span> <span lang="ru">в регистр </span>FLAG_EOT<span lang="ru">.</span>
	<span lang="ru">&nbsp;</span> <span lang="ru">Флаг </span>DMA_EOT
	<span lang="ru">должен быть обработан до формирования следующего </span>
	DMA_EOT. <span lang="ru">Если установлен бит </span>STATUS[DMA_INT_ERROR]=1,
	<span lang="ru">то это означает что пропущена обработка флага </span>DMA_EOT;</li>
</ul>
<p>Для останова <span lang="en-us">DMA </span>передачи&nbsp; необходимо записать <span lang="en-us">0 </span>в регистр
<span lang="en-us">DMA_CTRL</span><span lang="ru">.</span></p>
<p><span lang="ru">Для временной остановки работы канала </span>DMA
<span lang="ru">необходимо установить бит </span>PAUSE <span lang="ru">в 
регистре </span>DMA_CTRL, <span lang="ru">для возобновления работы достаточно 
сбросить бит </span>PAUSE.</p>
<p>&nbsp;</p>
<h3><span lang="ru"><a name="Дескриптор блока автоинициализации">Дескриптор 
блока автоинициализации</a></span></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table14" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;<span lang="ru">№</span></b></td>
    <td align="middle" width="15%" height="14"><b>&nbsp;Название</b></td>
    <td width="76%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">0</span></td>
    <td align="middle" width="15%">DS0</td>
    <td width="76%">&nbsp;<span lang="ru">Дескриптор 0 - описание блока данных</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%">1</td>
    <td align="middle" width="15%">DS1</td>
    <td width="76%"><span lang="ru">&nbsp;Дескриптор 1 - описание блока данных</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%">&nbsp;</td>
    <td align="middle" width="15%">&nbsp;</td>
    <td width="76%">&nbsp;</td>
  </tr>
  <tr>
    <td align="middle" width="6%">62</td>
    <td align="middle" width="15%">DS62</td>
    <td width="76%"><span lang="ru">&nbsp;Дескриптор 62 - описание блока данных</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%">63</td>
    <td align="middle" width="15%">NEXT_BLOCK</td>
    <td width="76%">&nbsp;<span lang="ru">Следующий блок дескрипторов</span></td>
  </tr>
  </table>
<p><span lang="ru">Адрес дескриптора должен быть выровнен на границу </span>512
<span lang="ru">байт.</span></p>
<h3><span lang="ru">Слово описания блока данных</span></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table15" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;<span lang="ru">Байт</span></b></td>
    <td align="middle" width="15%" height="14"><b>&nbsp;Название</b></td>
    <td width="76%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">0</span></td>
    <td align="middle" width="15%">A1</td>
    <td width="76%">&nbsp;<span lang="ru">Адрес, байт 1</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%">1</td>
    <td align="middle" width="15%">A2</td>
    <td width="76%">&nbsp;<span lang="ru">Адрес, байт 2</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">2</span></td>
    <td align="middle" width="15%">A3</td>
    <td width="76%">&nbsp;<span lang="ru">Адрес, байт 3</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">3</span></td>
    <td align="middle" width="15%"><span lang="ru">-</span></td>
    <td width="76%"><span lang="ru">&nbsp;Резерв, должен быть 0</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">4</span></td>
    <td align="middle" width="15%">CMD</td>
    <td width="76%"><span lang="ru">Команда дескриптора</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">5</span></td>
    <td align="middle" width="15%">S1</td>
    <td width="76%"><span lang="ru">Размер, байт 1<br>
	Бит 0 определяет направление передачи:<br>
&nbsp;0 - передача из </span>HOST <span lang="ru">в </span>ADM<br>
&nbsp;1 - <span lang="ru">передача из </span>ADM <span lang="ru">в </span>HOST</td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">6</span></td>
    <td align="middle" width="15%">S2</td>
    <td width="76%"><span lang="ru">Размер, байт 2</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">7</span></td>
    <td align="middle" width="15%">S3</td>
    <td width="76%"><span lang="ru">Размер, байт 3</span></td>
  </tr>
  </table>
<p><span lang="ru">Адрес блока должен быть выровнен на границу страницы, при 
этом всегда байт 0 адреса равен нулю и не представлен в регистре.<br>
Размер передаваемого блока должен быть кратен размеру страницы, при этом байт 0 
размера всегда равен нулю и не представлен в регистре.</span></p>
<h3><span lang="ru">Слово </span>CMD - <span lang="ru">команда дескриптора
</span></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table16" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;<span lang="ru">Бит</span></b></td>
    <td align="middle" width="15%" height="14"><b>&nbsp;Название</b></td>
    <td width="76%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">0</span></td>
    <td align="middle" width="15%">JUMP_NEST_DS</td>
    <td width="76%">&nbsp;1 - <span lang="ru">переход к следующему дескриптору</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%">1</td>
    <td align="middle" width="15%">JUMP_NEXT_BLOCK</td>
    <td width="76%">&nbsp;1 - <span lang="ru">переход к следующему блоку</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">2</span></td>
    <td align="middle" width="15%">JUMP_DS0</td>
    <td width="76%">&nbsp;1 - <span lang="ru">переход к дескриптору 0</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">3</span></td>
    <td align="middle" width="15%">&nbsp;</td>
    <td width="76%">&nbsp;</td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">4</span></td>
    <td align="middle" width="15%">EOT</td>
    <td width="76%">&nbsp;1 - <span lang="ru">требование сформировать флаг
	</span>EOT (End-Of-Transfer)</td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">5</span></td>
    <td align="middle" width="15%">&nbsp;</td>
    <td width="76%">&nbsp;</td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">6</span></td>
    <td align="middle" width="15%">&nbsp;</td>
    <td width="76%">&nbsp;</td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">7</span></td>
    <td align="middle" width="15%">&nbsp;</td>
    <td width="76%">&nbsp;</td>
  </tr>
  </table>
<p><span lang="ru">Если ни один из битов </span>JUMP_* <span lang="ru">не 
установлен, то канал </span>DMA <span lang="ru">завершает работу.</span></p>
<p>Установленный бит JUMP_NEXT_BLOCK означает, что следующее слово содержит 
адрес блока дескрипторов.</p>
<h3>NEXT_BLOCK - <span lang="ru">Следующий блок дескрипторов</span></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table17" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;<span lang="ru">Байт</span></b></td>
    <td align="middle" width="15%" height="14"><b>&nbsp;Название</b></td>
    <td width="76%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">0</span></td>
    <td align="middle" width="15%">A1</td>
    <td width="76%">&nbsp;<span lang="ru">Адрес, байт 1</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%">1</td>
    <td align="middle" width="15%">A2</td>
    <td width="76%">&nbsp;<span lang="ru">Адрес, байт 2</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">2</span></td>
    <td align="middle" width="15%">A3</td>
    <td width="76%">&nbsp;<span lang="ru">Адрес, байт 3</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">3</span></td>
    <td align="middle" width="15%"><span lang="ru">-</span></td>
    <td width="76%"><span lang="ru">&nbsp;Резерв, должен быть 0</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">4</span></td>
    <td align="middle" width="15%" rowspan="2">SIG</td>
    <td width="76%" rowspan="2">&nbsp;<span lang="ru">Сигнатура </span>0x4953</td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">5</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">6</span></td>
    <td align="middle" width="15%" rowspan="2">CRC</td>
    <td width="76%" rowspan="2"><span lang="ru">Контрольная сумма</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">7</span></td>
  </tr>
  </table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h2>Описание регистров <span lang="ru">блока </span>PE_EXT_FIFO</h2>
<h3><a name="Регистр BLOCK_ID">Регистр BLOCK_ID</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table6" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%">11<span lang="ru">..0</span></td>
    <td align="middle" width="6%">ID</td>
    <td width="66%"><span lang="ru">&nbsp;Идентификатор блока управления</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">15..12</span></td>
    <td align="middle" width="6%">MOD</td>
    <td width="66%"><span lang="ru">&nbsp;Номер модификации блока управления</span></td>
  </tr>
  </table>
<h3><a name="Регистр BLOCK_VER">Регистр BLOCK_VER</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table7" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%">7<span lang="ru">..0</span></td>
    <td align="middle" width="6%">V0</td>
    <td width="66%">&nbsp;<span lang="ru">Поле </span>V0</td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">15..8</span></td>
    <td align="middle" width="6%">V1</td>
    <td width="66%">&nbsp;<span lang="ru">Поле М1</span></td>
  </tr>
  </table>
<p><span lang="ru">Номер версии записывается в виде: </span>V1.V0</p>
<p>&nbsp;</p>
<h3><a name="Регистр FIFO_ID">Регистр FIFO_ID</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table2" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">11..0</td>
    <td align="middle" width="6%" height="14">SIZE</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">Размер </span>FIFO</td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">15..12</td>
    <td align="middle" width="6%" height="14">TYPE</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">Направление передачи<br>
&nbsp;&nbsp; 1 - </span>FIFO <span lang="ru">работает на чтение</span><br>
&nbsp;&nbsp; 2 - FIFO <span lang="ru">работает на запись</span></td>
  </tr>
  </table>
<p>Регистр FIFOx_ID <span lang="ru">предназначен для идентификации канала </span>
FIFO<span lang="ru">,</span> x - <span lang="ru">номер </span>FIFO.<span lang="ru"> 
Значение 0 означает отсутствие </span>FIFO.<br>
<span lang="ru">Поле </span>SIZE <span lang="ru">показывает размер </span>FIFO
<span lang="ru">в 32-х разрядных словах.</span></p>
<h3><a name="Регистр FIFO_NUMBER">Регистр FIFO_NUMBER</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table8" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">15..0</td>
    <td align="middle" width="6%" height="14">SIZE</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">Размер </span>FIFO</td>
  </tr>
  </table>
<p>Регистр FIFO_NUMBER <span lang="ru">содержит порядковый номер </span>FIFO
<span lang="ru">внутри прошивки.</span></p>
<p>&nbsp;</p>
<h3><a name="Регистр RESOURCE">Регистр RESOURCE</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table18" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">0</span></td>
    <td align="middle" width="6%" height="14">NON_SG_MODE</td>
    <td width="66%" height="14">1 - <span lang="ru">поддержка работы без 
	автоинициализации</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">1</span></td>
    <td align="middle" width="6%" height="14">SG_MODE</td>
    <td width="66%" height="14">1 - <span lang="ru">поддержка работы в режиме 
	автоинициализации</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">2</span></td>
    <td align="middle" width="6%" height="14">CNT_MODE</td>
    <td width="66%" height="14">1 - <span lang="ru">поддержка счётчика блоков</span></td>
  </tr>
	<tr>
    <td align="middle" width="5%" height="14">15..<span lang="ru">3</span></td>
    <td align="middle" width="6%" height="14"><span lang="ru">-</span></td>
    <td width="66%" height="14"></td>
  </tr>
  </table>
<p>Регистр RESOURCE <span lang="ru">содержит информацию о поддерживаемых режимах 
работы</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3><a name="Регистр DMA_MODE">Регистр DMA_MODE </a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table19" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">0</td>
    <td align="middle" width="6%" height="14">SG_MODE</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">1</span> - <span lang="ru">
	работа в режиме автоинициализации, 0 - без автоинициализации</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">1</td>
    <td align="middle" width="6%" height="14">DEMAND_MODE</td>
    <td width="66%" height="14">&nbsp;1 - <span lang="ru">работа по запросам</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">2</td>
    <td align="middle" width="6%" height="14">DIRECT</td>
    <td width="66%" height="14">&nbsp;1 - <span lang="ru">передача </span>ADM-&gt;HOST, 
	0 - <span lang="ru">передача </span>HOST-&gt;ADM</td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">3</span></td>
    <td align="middle" width="6%" height="14"></td>
    <td width="66%" height="14"></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">4</span></td>
    <td align="middle" width="6%" height="14"></td>
    <td width="66%" height="14"></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">5</span></td>
    <td align="middle" width="6%" height="14">DMA_INT_ENABLE</td>
    <td width="66%" height="14">&nbsp;1 - <span lang="ru">разрешение 
	формирования прерываний по флагу </span>EOT</td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">15..6</td>
    <td align="middle" width="6%" height="14">-</td>
    <td width="66%" height="14"></td>
  </tr>
  </table>
<p>&nbsp;</p>
<h3><a name="Регистр DMA_CTRL">Регистр DMA_CTRL&nbsp; </a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" id="table1" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">0</td>
    <td align="middle" width="6%" height="14">DMA_START</td>
    <td width="66%" height="14">&nbsp;1 - <span lang="ru">запуск канала </span>
	DMA</td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">1</td>
    <td align="middle" width="6%" height="14">DMA_STOP</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">не используется</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">2</td>
    <td align="middle" width="6%" height="14"></td>
    <td width="66%" height="14"></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">3</span></td>
    <td align="middle" width="6%" height="14">PAUSE</td>
    <td width="66%" height="14">&nbsp;1 - <span lang="ru">приостановка обмена</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">4</span></td>
    <td align="middle" width="6%" height="14">RESET_FIFO</td>
    <td width="66%" height="14">&nbsp;1 - <span lang="ru">сброс внутреннего
	</span>FIFO<span lang="ru"> канала </span>DMA</td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14"><span lang="ru">5</span></td>
    <td align="middle" width="6%" height="14"></td>
    <td width="66%" height="14"></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">15..6</td>
    <td align="middle" width="6%" height="14">-</td>
    <td width="66%" height="14"></td>
  </tr>
  </table>
<p>&nbsp;</p>
<h3><a name="Регистр BLOCK_CNT">Регистр BLOCK_CNT</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" style="border-collapse: collapse" id="table20">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="11%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%" height="14">31..0</td>
    <td align="middle" width="11%" height="14">CNT</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">Число блоков для передачи</span></td>
  </tr>
  </table>
<p><span lang="ru">Регистр определяет число блоков размером 4 килобайта, которые 
будут переданы по каналу </span>DMA. <span lang="ru">&nbsp;Значение 0 означает 
передачу бесконечного числа блоков. </span></p>
<p><span lang="ru">В данной модификации не используется.</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3><a name="Регистр STATUS">Регистр STATUS</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" style="border-collapse: collapse">
  <tr>
    <td align="middle" width="5%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="6%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">3..0</td>
    <td align="middle" width="6%" height="14">DMA_STATUS</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">Резерв</span>&nbsp; </td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">4</span></td>
    <td align="middle" width="6%">DMA_EOT</td>
    <td width="66%">&nbsp;1<span lang="ru"> - завершение однократного </span>DMA
	<span lang="ru">или блока с разрешённым прерыванием в цепочечном режиме</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">5</span></td>
    <td align="middle" width="6%">DMA_SG_EOT</td>
    <td width="66%">&nbsp;1 - <span lang="ru">завершение </span>DMA в режиме 
	автоинициализации</td>
  </tr>
  <tr>
    <td align="middle" width="5%">6</td>
    <td align="middle" width="6%">DMA_INT_ERROR</td>
    <td width="66%">&nbsp;1 - <span lang="ru">пропуск блока</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">7</span></td>
    <td align="middle" width="6%">INT_REQ</td>
    <td width="66%">&nbsp;1 - <span lang="ru">запрос прерывания</span></td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">8</span></td>
    <td align="middle" width="6%"><span lang="en-us">DSC_CORRECT</span></td>
    <td width="66%"><span lang="en-us">&nbsp;1 - </span>блок дескрипторов 
	правильный</td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">9</span></td>
    <td align="middle" width="6%">&nbsp;</td>
    <td width="66%">&nbsp;</td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">10</span></td>
    <td align="middle" width="6%">&nbsp;</td>
    <td width="66%">&nbsp;</td>
  </tr>
  <tr>
    <td align="middle" width="5%"><span lang="ru">11</span></td>
    <td align="middle" width="6%">&nbsp;</td>
    <td width="66%">&nbsp;</td>
  </tr>
  <tr>
    <td align="middle" width="5%" height="14">1<span lang="ru">5</span>..<span lang="ru">12</span></td>
    <td align="middle" width="6%" height="14"><span lang="en-us">SIG</span></td>
    <td width="66%" height="14">Сигнатура, установлено значение
	<span lang="en-us">0x0A</span></td>
  </tr>
  </table>
<h3>&nbsp;</h3>
<p>&nbsp;</p>
<h3><a name="Регистр FLAG_CLR">Регистр FLAG_CLR</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" style="border-collapse: collapse" id="table10">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="11%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%" height="14">3..0</td>
    <td align="middle" width="11%" height="14">-</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">Не используются</span></td>
  </tr>
  <tr>
    <td align="middle" width="6%"><span lang="ru">4</span></td>
    <td align="middle" width="11%">DMA_EOT</td>
    <td width="66%">&nbsp;1<span lang="ru"> - сброс </span>STATUS[DMA_EOT]</td>
  </tr>
  <tr>
    <td align="middle" width="6%" height="14">1<span lang="ru">5</span>..5</td>
    <td align="middle" width="11%" height="14">-</td>
    <td width="66%" height="14">&nbsp;Не используются</td>
  </tr>
  </table>
<p>Запись в регистр приводит к сбросу флага <span lang="en-us">EOT </span>в 
регистре <span lang="en-us">STATUS. </span>Требуется только одна запись.</p>
<p>&nbsp;</p>
<h3><a name="Регистры PCI_ADRL, PCI_ADRH">Регистр<span lang="ru">ы</span> 
PCI_ADRL, PCI_ADRH</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" style="border-collapse: collapse" id="table11">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="11%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%" height="14">31..0</td>
    <td align="middle" width="11%" height="14">-</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">адрес</span></td>
  </tr>
  </table>
<p><span lang="ru">Регистры </span>PCI_ADRL, PCI_ADRH <span lang="ru">содержат 
адрес блока на шине </span>PCI. <span lang="ru">Регистр </span>PCI_ADRL
<span lang="ru">содержит младшее слово 64-х разрядного адреса, регистр </span>
PCI_ADRH <span lang="ru">содержит старшее слово 64-х разрядного адреса. В 
настоящее время регистр </span><span lang="en-us">PCI_ADRH </span>не 
используется.</p>
<p>&nbsp;</p>
<h3><a name="Регистр LOCAL_ADR">Регистр LOCAL_ADR</a></h3>
<table cellSpacing="1" borderColorDark="#000000" cellPadding="2" width="90%" borderColorLight="#000000" border="2" style="border-collapse: collapse" id="table13">
  <tr>
    <td align="middle" width="6%" height="14"><b>&nbsp;Бит</b></td>
    <td align="middle" width="11%" height="14"><b>&nbsp;Название</b></td>
    <td width="66%" height="14"><b>&nbsp;Описание</b></td>
  </tr>
  <tr>
    <td align="middle" width="6%" height="14">31..0</td>
    <td align="middle" width="11%" height="14">ADR</td>
    <td width="66%" height="14">&nbsp;<span lang="ru">Адрес на локальной шине</span></td>
  </tr>
  </table>
<p><span lang="ru">Регистр определяет адрес на локальной шине к которому будут 
формироваться запросы на передачу данных.</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3>Список версий</h3>
<table cellSpacing="0" cellPadding="0" width="90%" border="0">
  <tr>
    <td align="middle" width="12%" valign="top"><span lang="ru">1.0</span></td>
    <td align="middle" width="16%" valign="top"><span lang="ru">14.05.2009</span></td>
    <td width="72%" valign="top"><span lang="ru">Базовая версия</span></td>
  </tr>
</table>
<p>&nbsp;</p>
 
 
<hr>
<p>&nbsp;</p>
 
 
</Body>
</Html>

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.