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.
This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
%# -*- coding: utf-8-unix -*-
\chapter { FAST软件编程入门指南}
\label { app:fast}
\subsection { 前言}
本文档的主要阅读对象是首次使用FAST平台进行软件开发的工作人员。
文档主要描述了FAST架构软件的主要功能、如何获取软件代码、
介绍软件架构与对应代码结构、编译运行FAST代码。
详细介绍了FAST开发的主要使用函数,
描述了用户如何使用开发函数进行自己代码的开发流程,
最后提供一个完整的开发示例说明,供初学者学习使用。
\subsection { FAST能做什么}
FAST平台的主要功能是软硬件配合的网络分组处理功能,
硬件的主要作用是解析报文,对报文进行查表匹配,
进行指定的动作处理,然后分发报文。
报文分发可以直接转发到硬件端口, 也可以送到CPU端的UA进程再处理,
UA处理完成后可以再通过硬件转发从端口输出。
软件的主要功能有两点:
一是对硬件的流表与对应动作进行配置, 指定报文从硬件端口转发或送到CPU端的UA;
二是处理硬件无法处理的报文,处理完成后再转发到硬件输出。
FAST软件的编程主要包括UA编程、规则管理编程和寄存器访问控制编程。
UA编程主要处理硬件送到指定软件的分组数据;
规则管理编程主要是对硬件流表的读写管理;
寄存器访问控制编程主要是对硬件各寄存器资源的访问控制。
对硬件规则的读写与对硬件其他寄存器的读写需要了解FAST架构的虚拟地址空间定义。