You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

155 lines
6.0 KiB

\chapter{资源分配}
\section{DDR3}
该项目中的 DDR 共 2GB,CPU 内部物理地址范围是:
\begin{table}[H]
\centering
\begin{tabular}{ccc}
\toprule
开始地址 & 结束地址 & 大小 \\
\midrule
\texttt{0x0080000000} & \texttt{0x00ffffffff} & \texttt{2G} \\
\bottomrule
\end{tabular}
\caption{2G DDR 地址分配}
\end{table}
系统中需要保留一段地址空间供 PCIE 的 DMA 使用,从 「智明达-FT2000 4核 32位 SMP BSP」 => 「内存配置」 下把空间预留出来:
\begin{figure}[H]
\centering
\includegraphics[width=0.75\textwidth]{ar18_revm}
\caption{内存配置}\label{fig:ddr}
\end{figure}
图例 \ref{fig:ddr} 中的 「\texttt{SYS\_MEM\_SIZE}」 是 \texttt{1024}, 单位是 \texttt{MB},表示是 reworks 系统中使用 1024MB 的内存。
总内存大小是 2048MB,保留的内存大小: \\
$\texttt{2048MB - 1024MB = 1024MB}$, 起始地址是 $\texttt{0xC0000000}$
\section{flash}
系统中有 2 片 flash,型号是:\texttt{SJ25QW256FNV},单片容量 32MB, 共 64MB。
其配置如下:
\begin{figure}[H]
\centering
\includegraphics[width=0.75\textwidth]{ar18_qflash}
\caption{flash 配置}\label{fig:qflash}
\end{figure}
其中一片 QSPI flash用于存放程序;另外一片用于 yaffs 文件系统,挂载在 /ffx0 目录下:
\begin{table}[H]
\centering
\begin{tabular}{ccl}
\toprule
开始地址 & 结束地址 & 大小 \\
\midrule
\texttt{0x0000000} & \texttt{0x1ffffff} & \texttt{32M} \\
\texttt{0x2000000} & \texttt{0x3ffffff} & \texttt{32M} \\
\bottomrule
\end{tabular}
\caption{flash 地址分配}
\end{table}
各个程序文件在 flash 上的地址分配如下:
\begin{table}[H]
\centering
\begin{tabular}{ccl}
\toprule
开始地址 & 大小 & 程序 \\
\midrule
\texttt{0x0000000} & \texttt{6M} & \texttt{bootloader.bin} \\
\texttt{0x0600000} & \texttt{512K} & \texttt{授权管理} \\
\texttt{0x0680000} & \texttt{512K} & \texttt{fpga key} \\
\texttt{0x0700000} & \texttt{9M} & \texttt{reworks.elf} \\
\texttt{0x1000000} & \texttt{-} & \texttt{AppRun.out} \\
\texttt{0x2000000} & \texttt{32M} & \texttt{/ffx0} \\
\texttt{0x4000000} & \texttt{-} & \texttt{FPGA flash} \\
\bottomrule
\end{tabular}
\caption{flash 文件布局}
\end{table}
\textcolor{red}{注意}: U-Boot 的环境变量 「\textcolor{blue!40}{appaddr}」 保存有 「\textcolor{blue!40}{AppRun.out}」 在 flash 上的开始位置。如果 U-Boot 的默认配置是 \texttt{0xc00000}
需要在 U-Boot 的命令行上用 「\textcolor{blue!40}{setenv appaddr 0x1000000; saveenv}」 命令将它修改成 \texttt{0x1000000}
\begin{minted}[bgcolor=lightgray!30,fontsize=\small]{bash}
[FT2004 Boot]: q
ft2004# printenv appaddr
appaddr=c00000
ft2004# setenv appaddr 0x1000000
ft2004# saveenv
Saving Environment to SPI Flash... lhl:done
OK
ft2004# printenv appaddr
appaddr=0x1000000
\end{minted}
如果 /ffx0 不能正常挂载,可能是还没有经过正常的格式化操作:
\begin{minted}[bgcolor=lightgray!30,fontsize=\small]{bash}
reworks> yaffsFormat "/dev/ffxdk0p1"
\end{minted}
\clearpage
\subsection{授权管理配置}
授权管理的配置界面如下图所示:
\begin{figure}[H]
\centering
\includegraphics[width=0.75\textwidth]{ar18_lic}
\caption{授权管理配置}\label{fig:lic}
\end{figure}
参数 「\texttt{AUTH\_SPI\_ADDR}」(本项目中配置的值是 \texttt{\textcolor{blue!80}{0x600000}})用于配置授权保存在 flash 上的位置。注意不要与其他文件所在的位置相冲突。
\section{pcie}
系统中有 2 个 \texttt{PCIE} 接口,分别与 \texttt{JEM82575}\texttt{与SMQ7K325T} 相连接。
系统中有2个 PCIE 接口与FPGA连接,PCIE (1,0,0) 与 SMQ7K325T 连接,PCIE (2,0,0) 与 JEM82575 连接,其默认地址分配如下:
\begin{table}[H]
\centering
\begin{tabular}{clcc}
\toprule
\texttt{PCIE} 端口 & \texttt{BAR0} 地址 & \texttt{vid\&pid} & \texttt{FPGA} \\
\midrule
\texttt{(1,0,0)} & \texttt{0x58400000} & \texttt{0x10ee\&0x7014} & \texttt{SMQ7K325T} \\
\texttt{(2,0,0)} & \texttt{0x58c00000} & \texttt{0x8086\&0x9666} & \texttt{JEM82575} \\
\bottomrule
\end{tabular}
\caption{pcie 设备分配}
\end{table}
在系统中可以用 \texttt{pciConfigTopoShow} 查看所有的 PCIE 设备,用 \texttt{pciHeaderShow} 查看单个设备的信息,例如 \texttt{pciHeaderShow(2,0,0)} 会显示 \texttt{(2,0,0)}
设备的配置信息。
\section{SRIO}
FT2000 通过 PCIE 与SMQ7K325T 连接,转接出 SRIO 接口在 VPX 连接器上。连接关系如图 \ref{fig:srio} 所示:
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{srio.pdf}
\caption{srio 模块连接关系}\label{fig:srio}
\end{figure}%
底板通过电阻将收发环回进行测试。
\section{网卡}
FT2000 系统中 的GMAC0 对应调试网口,其默认 IP 地址是: \texttt{172.16.80.10},服务器的默认IP地址是:\texttt{172.16.80.5}。GMAC1 与 JEM82575 的两个网口做数据包的冗余转发功能。各网口在 sub 和 t01 上的对应关系如下:
\begin{table}[H]
\centering
\begin{tabular}{cccc}
\toprule
网口 & 所属芯片 & 位置 & 备注\\
\midrule
调试网口 & \texttt{GMAC0} & {\texttt{SUB}} & {\small \texttt{IP: 172.16.80.10}}\\
网口 \texttt{1} & \texttt{JEM82575} & {\texttt{T01}} & \\
网口 \texttt{2} & \texttt{JEM82575} & {\texttt{T01}} & \\
网口 \texttt{3} & \texttt{GMAC1} & {\texttt{T01}} & \\
\bottomrule
\end{tabular}
\caption{网口对应关系}
\end{table}
网卡冗余测试可采用的连接关系如下图所示:
\begin{figure}[H]
\centering
\def\svgwidth{0.6\columnwidth}
\input{images/jem82575-2.pdf_tex}
\caption{冗余测试连接关系}
\end{figure}
在电脑上用 pingtester 测试程序,将ping的间隔和超时都设置成10ms。分别插拔 网口2和网口3的网线,看丢包计数是否超过50ms的设计要求。
%「」
% Local Variables:
% TeX-master: "../ar18_guide"
% End: