data_offload: Update README and generic block design
parent
26518cdace
commit
6516b09a31
|
@ -8,10 +8,13 @@ Data offload module for high-speed converters:
|
||||||
**NOTE**: This IP will always have a storage unit (internal or external to the FPGA) and is
|
**NOTE**: This IP will always have a storage unit (internal or external to the FPGA) and is
|
||||||
designed to handle high data rates. If your data paths will run in a lower data
|
designed to handle high data rates. If your data paths will run in a lower data
|
||||||
rate, and your intention is just to transfer the data to another clock domain or
|
rate, and your intention is just to transfer the data to another clock domain or
|
||||||
to adjust the bus width of the data path, you must to use another IP.
|
to adjust the bus width of the data path, you may want to check out the util_axis_fifo or
|
||||||
|
util_axis_fifo_asym IPs.
|
||||||
|
|
||||||
|
The initialization and data transfer looks as follows:
|
||||||
|
|
||||||
* in case of DAC, the DMA initialize the storage unit, after that the controller
|
* in case of DAC, the DMA initialize the storage unit, after that the controller
|
||||||
will push the data to the DAC interface in one-shot or cyclic way, until the next initialization
|
will push the data to the DAC interface in one-shot or cyclic way
|
||||||
|
|
||||||
* in case of ADC, the DMA request a transfer, the controller will save the data into
|
* in case of ADC, the DMA request a transfer, the controller will save the data into
|
||||||
the storage unit, after that will push it to the DMA
|
the storage unit, after that will push it to the DMA
|
||||||
|
@ -48,7 +51,7 @@ URAM, external memory etc.)
|
||||||
|
|
||||||
## Block diagram
|
## Block diagram
|
||||||
|
|
||||||
![Generic Block Diagram](./docs/do_arch.svg)
|
![Generic Block Diagram](./docs/generic_bd.svg)
|
||||||
|
|
||||||
## Parameters
|
## Parameters
|
||||||
|
|
||||||
|
@ -57,28 +60,19 @@ URAM, external memory etc.)
|
||||||
|ID | integer | 0 | Instance ID number |
|
|ID | integer | 0 | Instance ID number |
|
||||||
|MEM_TYPE | [ 0:0] | 0 | Define the used storage type: FPGA RAM - 0; external DDR - 1 |
|
|MEM_TYPE | [ 0:0] | 0 | Define the used storage type: FPGA RAM - 0; external DDR - 1 |
|
||||||
|MEM_SIZE | [31:0] | 1024 | Define the size of the storage element |
|
|MEM_SIZE | [31:0] | 1024 | Define the size of the storage element |
|
||||||
|RX_ENABLE | [ 0:0] | 1 | Enable/disable the ADC path |
|
|
||||||
|RX_FRONTEND_IF | [ 0:0] | 0 | M_AXIS - 0; FIFO_RD - 1 (FRONTEND is the DMA side) |
|
|
||||||
|RX_BACKEND_IF | [ 0:0] | 0 | S_AXIS - 0; FIFO_WR - 1 (BACKEND is the device side) |
|
|
||||||
|RX_FRONTEND_DATA_WIDTH| integer | 64 | The data width of the RX frontend interface, it depends of the dma configuration |
|
|
||||||
|RX_BACKEND_DATA_WIDTH | integer | 64 | The data width of the RX backend interface, it depends of the device core configuration |
|
|
||||||
|RX_RAW_DATA_EN | [ 0:0] | 1 | Enables a gearbox module in the RX path, so only the raw samples will be stored in the memory. |
|
|
||||||
|TX_ENABLE | [ 0:0] | 1 | Enable/disable the DAC path |
|
|
||||||
|TX_FRONTEND_IF | [ 0:0] | 0 | S_AXIS - 0; FIFO_WR - 1 (FRONTEND is the DMA side) |
|
|
||||||
|TX_BACKEND_IF | [ 0:0] | 0 | M_AXIS - 0; FIFO_RD - 1 (BACKEND is the device side) |
|
|
||||||
|TX_FRONTEND_DATA_WIDTH| integer | 64 | The data width of the TX frontend interface, it depends of the dma configuration |
|
|
||||||
|TX_BACKEND_DATA_WIDTH | integer | 64 | The data width of the TX backend interface, it depends of the device core configuration |
|
|
||||||
|TX_RAW_DATA_EN | [ 0:0] | 1 | Enables a gearbox module in the TX path, so only the raw samples will be stored in the memory. |
|
|
||||||
|MEMC_UIF_TYPE | [ 0:0] | 0 | AXI_MM - 0; AVL_MM - 1 |
|
|
||||||
|MEMC_UIF_DATA_WIDTH | [ 0:0] | 512 | The valid data depends on the DDRx memory controller IP. |
|
|MEMC_UIF_DATA_WIDTH | [ 0:0] | 512 | The valid data depends on the DDRx memory controller IP. |
|
||||||
|MEMC_UIF_ADDRESS_WIDTH| integer | 25 | The valid data depends on the DDRx memory controller IP. |
|
|TX_OR_RXN_PATH | [ 0:0] | 1 | If set TX path enabled, otherwise RX |
|
||||||
|MEMC_RX_BADDRESS | [31:0] |32'h000000 | DDR base address for the ADC data. |
|
|SRC_DATA_WIDTH | integer | 64 | The data width of the source interface |
|
||||||
|MEMC_TX_BADDRESS | [31:0] |32'h100000 | DDR base address for the DAC data. |
|
|SRC_RAW_DATA_EN | [ 0:0] | 0 | Enable if the data path does extend samples to 16 bits |
|
||||||
|
|SRC_ADDR_WIDTH | integer | 8 | The address width of the source interface, should be defined relative to the MEM_SIZE (MEM_SIZE/SRC_DATA_WIDTH/8) |
|
||||||
|
|DST_ADDR_WIDTH | integer | 7 | The address width of the source interface, should be defined relative to the MEM_SIZE (MEM_SIZE/DST_DATA_WIDTH/8) |
|
||||||
|
|DST_DATA_WIDTH | integer | 64 | The data width of the destination interface |
|
||||||
|
|DST_RAW_DATA_EN | [ 0:0] | 0 | Enable if the data path does extend samples to 16 bits |
|
||||||
|
|DST_CYCLIC_EN | [ 0:0] | 0 | Enables CYCLIC mode for destinations like DAC |
|
||||||
|
|AUTO_BRINUP | [ 0:0] | 0 | If enabled the IP runs automatically after bootup |
|
||||||
|
|
||||||
## Interfaces
|
## Interfaces
|
||||||
|
|
||||||
![Interfaces](../../docs/block_diagrams/data_offload/interface.svg)
|
|
||||||
|
|
||||||
### AXI4 Lite Memory Mapped Slave (S_AXI4_LITE)
|
### AXI4 Lite Memory Mapped Slave (S_AXI4_LITE)
|
||||||
|
|
||||||
This interface is used to access the register map.
|
This interface is used to access the register map.
|
||||||
|
@ -145,10 +139,11 @@ input s_axi_rready
|
||||||
|
|
||||||
### Supported data interfaces
|
### Supported data interfaces
|
||||||
|
|
||||||
**NOTE**: All the data interfaces for the streams should be supported by both
|
**NOTE**: To simplify the design both the source and destination data interface is
|
||||||
frontend (DMA) and backend (device) side. Although in general the FIFO_RD and
|
an AXI4 streaming interface. A FIFO write (ADC) interface can be treated as AXI4
|
||||||
FIFO_WR interfaces can be found in the device side, and the AXIS interfaces on
|
stream where only the master controles the data rate (s_axis_ready is always asserted),
|
||||||
the DMA side.
|
and a FIFO read (DAC) interface can be treated as an AXI4 stream where only the slave
|
||||||
|
controles the data rate. (m_axis_valid is always asserted).
|
||||||
|
|
||||||
#### AXI4 Stream interface (S_AXIS | M_AXIS)
|
#### AXI4 Stream interface (S_AXIS | M_AXIS)
|
||||||
|
|
||||||
|
@ -158,11 +153,6 @@ the transmit DMA or ADC device.
|
||||||
* The AXI Stream Master (M_AXIS) interface is used to transmit AXI stream
|
* The AXI Stream Master (M_AXIS) interface is used to transmit AXI stream
|
||||||
to receive DMA or DAC device
|
to receive DMA or DAC device
|
||||||
|
|
||||||
**NOTE**: In all cases the data stream is controlled by the device. Although the
|
|
||||||
generic AXI Stream interface standard supports back-pressure, in our cases none
|
|
||||||
the DAC, nore the ADC can wait for data. The DMA always have to be ready, samples
|
|
||||||
will be lost otherwise!
|
|
||||||
|
|
||||||
```verilog
|
```verilog
|
||||||
// NOTE: this reference is a master interface
|
// NOTE: this reference is a master interface
|
||||||
|
|
||||||
|
@ -188,58 +178,39 @@ and **axis_tkeep** will be used to indicate a partial last beat. This informatio
|
||||||
should be transferred from the source domain to the sink domain, so we can read
|
should be transferred from the source domain to the sink domain, so we can read
|
||||||
back the data from memory correctly.
|
back the data from memory correctly.
|
||||||
|
|
||||||
#### ADI FIFO interface
|
#### FIFO source and destination interface to the storage unit
|
||||||
|
|
||||||
This is non-blocking (no back-pressure) interface for the device cores.
|
This is non-blocking (no back-pressure) interface for the storage unit,
|
||||||
|
having an address bus too, so an ad_mem module can be connected directly to controller IP.
|
||||||
|
|
||||||
To understand the motivation behind the name, let's look at a simple FIFO and its
|
|
||||||
interfaces:
|
|
||||||
|
|
||||||
![Simple FIFO](../../docs/block_diagrams/data_offload/simple_fifo.svg)
|
|
||||||
|
|
||||||
A FIFO in general has a **write** and a **read** interface. In each case the
|
|
||||||
interface is controlled by an external logic. Meaning that the FIFO will always
|
|
||||||
act as slave. The only difference between the two interfaces is that in case of
|
|
||||||
the **write** interface the data is driven by the master (we are writing into
|
|
||||||
the FIFO), and in case of the **read** interface the data is driven by the slave
|
|
||||||
(we are reading from the FIFO).
|
|
||||||
|
|
||||||
To adapt this concept in our case, the device, which can be an ADC or a DAC,
|
|
||||||
will always be the master. This means, that an ADC core will have a **fifo write**
|
|
||||||
interface, and a DAC core will have a **fifo read** interface.
|
|
||||||
|
|
||||||
In the same time, this means, that a processing core, which wants to interface
|
|
||||||
a device core, need to have a **salve fifo write** or a **slave fifo read**
|
|
||||||
interface, in other words needs to act as a FIFO.
|
|
||||||
|
|
||||||
**Note:** The processing core (or DMA) can have an AXI stream interface too. To
|
|
||||||
connect an AXIS stream interface to a FIFO interface the following mapping should
|
|
||||||
be respected:
|
|
||||||
|
|
||||||
* **fifo write to AXIS slave**:
|
|
||||||
```verilog
|
```verilog
|
||||||
// the processing unit should always be READY, otherwise will lose data
|
// This is a FIFO source interface - it's clocked on the source clock (s_axis_aclk)
|
||||||
assign s_axis_valid = fifo_wr_valid;
|
// Reset signal
|
||||||
assign s_axis_data = fifo_wr_data;
|
output fifo_src_resetn
|
||||||
|
// write enable signal
|
||||||
|
output fifo_src_wen
|
||||||
|
// address bus for internal memory
|
||||||
|
output [SRC_ADDR_WIDTH-1:0] fifo_src_waddr
|
||||||
|
// source data bus
|
||||||
|
output [SRC_DATA_WIDTH-1:0] fifo_src_wdata
|
||||||
|
// write last, indicates the last valid transfer
|
||||||
|
output fifo_src_wlast
|
||||||
```
|
```
|
||||||
|
|
||||||
* **fifo read to AXIS master**:
|
|
||||||
```verilog
|
```verilog
|
||||||
// the processing unit should drive the data bus with the next valid data,
|
// This is a FIFO destination interface - it's clocked on the destination clock (m_axis_aclk)
|
||||||
// as the READY gets asserted
|
// Reset signal
|
||||||
assign m_axis_ready = fifo_rd_valid;
|
output fifo_dst_resetn
|
||||||
assign fifo_rd_data = m_axis_data;
|
// read enable signal
|
||||||
|
output fifo_dst_ren
|
||||||
|
// indicate if the storage is ready to accept read requests
|
||||||
|
output fifo_dst_ready,
|
||||||
|
// address bus for internal memory
|
||||||
|
output [DST_ADDR_WIDTH-1:0] fifo_dst_raddr
|
||||||
|
// destination data bus
|
||||||
|
output [DST_DATA_WIDTH-1:0] fifo_dst_rdata
|
||||||
```
|
```
|
||||||
|
|
||||||
User should be aware that in this case the AXI stream interface will loose the
|
|
||||||
back pressure capability. The processing unit should be designed to compensate this
|
|
||||||
scarcity.
|
|
||||||
|
|
||||||
**NOTE**: the data stream should arrive in packed format to the core. The core
|
|
||||||
does not care about number of channels or samples per beat. Result of this
|
|
||||||
constraint is that the FIFO interface of the **Data Offload** module does not
|
|
||||||
have any **enable** signals.
|
|
||||||
|
|
||||||
```verilog
|
```verilog
|
||||||
// This is a Slave FIFO Read interface
|
// This is a Slave FIFO Read interface
|
||||||
// device digital interface clock, or core clock
|
// device digital interface clock, or core clock
|
||||||
|
@ -254,163 +225,6 @@ output [DATA_WIDTH-1:0] fifo_rd_data
|
||||||
output fifo_rd_unf
|
output fifo_rd_unf
|
||||||
```
|
```
|
||||||
|
|
||||||
```verilog
|
|
||||||
// This is a Slave FIFO Write interface
|
|
||||||
// device digital interface clock, or core clock
|
|
||||||
input fifo_wr_clk
|
|
||||||
// enables the channel -- in our case this is redundant -- maybe we do neet to use it at all
|
|
||||||
input fifo_wr_enable
|
|
||||||
// validates the data on the bus, it's driven by the device, indicates when the core drives the bus with new data
|
|
||||||
input fifo_wr_valid
|
|
||||||
// primary payload, its data width is equal with the channel's data width
|
|
||||||
input [DATA_WIDTH-1:0] fifo_wr_data
|
|
||||||
// indicates an overflow, the sink (offload FIFO in this case) can not consume the data fast enough
|
|
||||||
output fifo_wr_ovf
|
|
||||||
```
|
|
||||||
|
|
||||||
#### AXI4 Memory Mapped master (M_AXI_MM)
|
|
||||||
|
|
||||||
An AXI4 Memory Mapped interface, which transfer data into/from the external DDRx
|
|
||||||
memory. This interface will be used explicitly with Xilinx FPGAs, to interface
|
|
||||||
the MC (Memory Controller).
|
|
||||||
|
|
||||||
```verilog
|
|
||||||
/* clocks and resets */
|
|
||||||
|
|
||||||
// clock signal of the interface, this is an independent clock from the sys_cpu, in general 200 MHz
|
|
||||||
input axi_clk
|
|
||||||
// synchronous active low reset
|
|
||||||
input axi_resetn
|
|
||||||
|
|
||||||
/* write address channel */
|
|
||||||
|
|
||||||
// validates the address on the bus
|
|
||||||
output axi_awvalid
|
|
||||||
// write address ID, this signal is the identification tag for the write address group of signals
|
|
||||||
output [ 3:0] axi_awid
|
|
||||||
// burst type, this must use INCR (incrementing address burst) -- 2'b01
|
|
||||||
output [ 1:0] axi_awburst
|
|
||||||
// lock type, atomic characteristics of the transfer -- must be set to 1'b0
|
|
||||||
output axi_awlock
|
|
||||||
// indicates the bufferable, cacheable, write-through, write-back, and allocate attributes -- 4'b0011 recommended by Xilinx, IP as slaves in general ignores
|
|
||||||
output [ 3:0] axi_awcache
|
|
||||||
// protection type -- not used in the core, recommended value 3'b000
|
|
||||||
output [ 2:0] axi_awprot
|
|
||||||
// not implemented in Xilinx Endpoint IP
|
|
||||||
output [ 3:0] axi_awqos
|
|
||||||
// not implemented in Xilinx Endpoint IP
|
|
||||||
output [ 3:0] axi_awuser
|
|
||||||
// up to 256 beats for incrementing (INCR)
|
|
||||||
output [ 7:0] axi_awlen
|
|
||||||
// transfer width 8 to 1024 supported, in general the MIG core has 512 bits interface
|
|
||||||
output [ 2:0] axi_awsize
|
|
||||||
// write address
|
|
||||||
output [ 31:0] axi_awaddr
|
|
||||||
// write ready, indicates that the slave can accept the address
|
|
||||||
input axi_awready
|
|
||||||
|
|
||||||
/* write data channel */
|
|
||||||
|
|
||||||
// validate the data on the bus
|
|
||||||
output axi_wvalid
|
|
||||||
// write data
|
|
||||||
output [AXI_DATA_WIDTH-1:0] axi_wdata
|
|
||||||
/8)-1:0] axi_wstrb // write strobe, indicates which byte lanes to update
|
|
||||||
output [(AXI_DATA_WIDTH
|
|
||||||
// fully supported, this signal indicates the last transfer in a write burst
|
|
||||||
output axi_wlast
|
|
||||||
// not implemented in Xilinx Endpoint IP
|
|
||||||
output [ 3:0] axi_wuser
|
|
||||||
// write ready, indicates that the slave can accept the data
|
|
||||||
input axi_wready
|
|
||||||
|
|
||||||
/* write response channel */
|
|
||||||
|
|
||||||
// validates the write response of the slave
|
|
||||||
input axi_bvalid
|
|
||||||
// the identification tag of the write response, the BID value must match the AWID
|
|
||||||
input [ 3:0] axi_bid
|
|
||||||
// write response, indicate the status of the transfer
|
|
||||||
input [ 1:0] axi_bresp
|
|
||||||
// not implemented in Xilinx Endpoint IP
|
|
||||||
input [ 3:0] axi_buser
|
|
||||||
// response ready, indicates that the master can accept the data
|
|
||||||
output axi_bready
|
|
||||||
|
|
||||||
/* read address channel */
|
|
||||||
|
|
||||||
// validates the address on the bus
|
|
||||||
output axi_arvalid
|
|
||||||
// read address ID, this signal is the identification tag for the read address group of signals
|
|
||||||
output [ 3:0] axi_arid
|
|
||||||
// burst type, this must use INCR (incrementing address burst) -- 2'b01
|
|
||||||
output [ 1:0] axi_arburst
|
|
||||||
// lock type, atomic characteristics of the transfer -- must be set to 1'b0
|
|
||||||
output axi_arlock
|
|
||||||
// indicates the bufferable, cacheable, write-through, write-back, and allocate attributes -- 4'b0011 recommended by Xilinx, IP as slaves in general ignores
|
|
||||||
output [ 3:0] axi_arcache
|
|
||||||
// protection type -- not used in the core
|
|
||||||
output [ 2:0] axi_arprot
|
|
||||||
// not implemented in Xilinx Endpoint IP
|
|
||||||
output [ 3:0] axi_arqos
|
|
||||||
// not implemented in Xilinx Endpoint IP
|
|
||||||
output [ 3:0] axi_aruser
|
|
||||||
// up to 256 beats for incrementing (INCR)
|
|
||||||
output [ 7:0] axi_arlen
|
|
||||||
// transfer width 8 to 1024 supported, in general the MIG core has 512 bits interface
|
|
||||||
output [ 2:0] axi_arsize
|
|
||||||
// read address
|
|
||||||
output [ 31:0] axi_araddr
|
|
||||||
// read ready, indicates that the slave can accept the address
|
|
||||||
input axi_arready
|
|
||||||
|
|
||||||
/* read data channel */
|
|
||||||
|
|
||||||
// validate the data on the bus
|
|
||||||
input axi_rvalid
|
|
||||||
// the RID is generated by the slave and must match by the ARID value
|
|
||||||
input [ 3:0] axi_rid
|
|
||||||
// not implemented in Xilinx Endpoint IP
|
|
||||||
input [ 3:0] axi_ruser
|
|
||||||
// read response, indicate the status of the transfer
|
|
||||||
input [ 1:0] axi_rresp
|
|
||||||
// indicates the last transfer in a read burst
|
|
||||||
input axi_rlast
|
|
||||||
// read data drivers by the slave
|
|
||||||
input [AXI_DATA_WIDTH-1:0] axi_rdata
|
|
||||||
// read ready, indicates that the master can accept the data
|
|
||||||
output axi_rready
|
|
||||||
```
|
|
||||||
|
|
||||||
### Avalon Memory Mapped master (AVL_MM)
|
|
||||||
|
|
||||||
An Avalon Memory Mapped interface which transfer data into/from an external DDR4
|
|
||||||
memory. This interface will be used explicitly with Intel FPGAs.
|
|
||||||
|
|
||||||
```verilog
|
|
||||||
// interface clock and reset
|
|
||||||
input avl_clk
|
|
||||||
input avl_reset
|
|
||||||
// address for read or write
|
|
||||||
output reg [(AVL_ADDRESS_WIDTH-1):0] avl_address
|
|
||||||
// indicate the number of transfers in each burst
|
|
||||||
output reg [ 6:0] avl_burstcount
|
|
||||||
// enables specific byte lanes during transfers on interfaces fo width greater than 8 bits [3]
|
|
||||||
output reg [ 63:0] avl_byteenable
|
|
||||||
// asserted to indicate a read transfer (request)
|
|
||||||
output avl_read
|
|
||||||
// read data, driven from the slave to the master
|
|
||||||
input [(AVL_DATA_WIDTH-1):0] avl_readdata
|
|
||||||
// used for variable-latency, pipelined read transfers, to validate the data on the bus
|
|
||||||
input avl_readdata_valid
|
|
||||||
// or waitrequest_n in specs, indicates the availability of the slave
|
|
||||||
input avl_ready
|
|
||||||
// asserted to indicate a write transfer
|
|
||||||
output avl_write
|
|
||||||
// write data, driven from the master to the slave
|
|
||||||
output [(AVL_DATA_WIDTH-1):0] avl_writedata
|
|
||||||
```
|
|
||||||
|
|
||||||
### Initialization request interface
|
### Initialization request interface
|
||||||
|
|
||||||
Define a simple request/acknowledge interface to initialize the memory:
|
Define a simple request/acknowledge interface to initialize the memory:
|
||||||
|
@ -611,11 +425,11 @@ the AXI stream interface)
|
||||||
|
|
||||||
### RX control FSM for internal RAM mode
|
### RX control FSM for internal RAM mode
|
||||||
|
|
||||||
![RX_control FMS for internal RAM mode](../../docs/block_diagrams/data_offload/rx_bram_fsm.svg)
|
![RX_control FMS for internal RAM mode](../../docs/rx_bram_fsm.svg)
|
||||||
|
|
||||||
### TX control FSM for internal RAM mode
|
### TX control FSM for internal RAM mode
|
||||||
|
|
||||||
![TX_control FMS for internal RAM mode](../../docs/block_diagrams/data_offload/tx_bram_fsm.svg)
|
![TX_control FMS for internal RAM mode](../../docs/tx_bram_fsm.svg)
|
||||||
|
|
||||||
**TODO** FSMs for the external DDR mode
|
**TODO** FSMs for the external DDR mode
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,4 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
||||||
|
|
||||||
<svg
|
<svg
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
@ -14,7 +12,7 @@
|
||||||
viewBox="0 0 800.00001 500.00001"
|
viewBox="0 0 800.00001 500.00001"
|
||||||
id="svg2"
|
id="svg2"
|
||||||
version="1.1"
|
version="1.1"
|
||||||
inkscape:version="0.91 r13725"
|
inkscape:version="1.0.2 (e86c870879, 2021-01-15, custom)"
|
||||||
sodipodi:docname="generic_bd.svg">
|
sodipodi:docname="generic_bd.svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs4">
|
id="defs4">
|
||||||
|
@ -93,38 +91,6 @@
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
||||||
transform="scale(0.8,0.8)" />
|
transform="scale(0.8,0.8)" />
|
||||||
</marker>
|
</marker>
|
||||||
<marker
|
|
||||||
inkscape:stockid="TriangleOutL"
|
|
||||||
orient="auto"
|
|
||||||
refY="0"
|
|
||||||
refX="0"
|
|
||||||
id="marker6284"
|
|
||||||
style="overflow:visible"
|
|
||||||
inkscape:isstock="true"
|
|
||||||
inkscape:collect="always">
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path6286"
|
|
||||||
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
|
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
|
||||||
transform="scale(0.8,0.8)" />
|
|
||||||
</marker>
|
|
||||||
<marker
|
|
||||||
inkscape:stockid="TriangleOutL"
|
|
||||||
orient="auto"
|
|
||||||
refY="0"
|
|
||||||
refX="0"
|
|
||||||
id="marker6190"
|
|
||||||
style="overflow:visible"
|
|
||||||
inkscape:isstock="true"
|
|
||||||
inkscape:collect="always">
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path6192"
|
|
||||||
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
|
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
|
||||||
transform="scale(0.8,0.8)" />
|
|
||||||
</marker>
|
|
||||||
<marker
|
<marker
|
||||||
inkscape:stockid="TriangleOutL"
|
inkscape:stockid="TriangleOutL"
|
||||||
orient="auto"
|
orient="auto"
|
||||||
|
@ -155,38 +121,6 @@
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
||||||
transform="scale(0.8,0.8)" />
|
transform="scale(0.8,0.8)" />
|
||||||
</marker>
|
</marker>
|
||||||
<marker
|
|
||||||
inkscape:isstock="true"
|
|
||||||
style="overflow:visible"
|
|
||||||
id="marker5704"
|
|
||||||
refX="0"
|
|
||||||
refY="0"
|
|
||||||
orient="auto"
|
|
||||||
inkscape:stockid="TriangleOutL"
|
|
||||||
inkscape:collect="always">
|
|
||||||
<path
|
|
||||||
transform="scale(0.8,0.8)"
|
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
|
||||||
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
|
|
||||||
id="path5706"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
</marker>
|
|
||||||
<marker
|
|
||||||
inkscape:isstock="true"
|
|
||||||
style="overflow:visible"
|
|
||||||
id="marker5640"
|
|
||||||
refX="0"
|
|
||||||
refY="0"
|
|
||||||
orient="auto"
|
|
||||||
inkscape:stockid="TriangleOutL"
|
|
||||||
inkscape:collect="always">
|
|
||||||
<path
|
|
||||||
transform="scale(0.8,0.8)"
|
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
|
||||||
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
|
|
||||||
id="path5642"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
</marker>
|
|
||||||
<marker
|
<marker
|
||||||
inkscape:stockid="TriangleOutL"
|
inkscape:stockid="TriangleOutL"
|
||||||
orient="auto"
|
orient="auto"
|
||||||
|
@ -202,22 +136,6 @@
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
||||||
transform="scale(0.8,0.8)" />
|
transform="scale(0.8,0.8)" />
|
||||||
</marker>
|
</marker>
|
||||||
<marker
|
|
||||||
inkscape:stockid="TriangleOutL"
|
|
||||||
orient="auto"
|
|
||||||
refY="0"
|
|
||||||
refX="0"
|
|
||||||
id="TriangleOutL-5-7-7-3"
|
|
||||||
style="overflow:visible"
|
|
||||||
inkscape:isstock="true"
|
|
||||||
inkscape:collect="always">
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path4988-2-1-3-5"
|
|
||||||
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
|
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
|
||||||
transform="scale(0.8,0.8)" />
|
|
||||||
</marker>
|
|
||||||
<marker
|
<marker
|
||||||
inkscape:stockid="TriangleOutL"
|
inkscape:stockid="TriangleOutL"
|
||||||
orient="auto"
|
orient="auto"
|
||||||
|
@ -323,6 +241,51 @@
|
||||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
||||||
transform="scale(0.8,0.8)" />
|
transform="scale(0.8,0.8)" />
|
||||||
</marker>
|
</marker>
|
||||||
|
<marker
|
||||||
|
inkscape:stockid="TriangleOutL"
|
||||||
|
orient="auto"
|
||||||
|
refY="0"
|
||||||
|
refX="0"
|
||||||
|
id="TriangleOutL-5-7-7-9"
|
||||||
|
style="overflow:visible"
|
||||||
|
inkscape:isstock="true">
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path4988-2-1-3-9"
|
||||||
|
d="M 5.77,0 -2.88,5 V -5 Z"
|
||||||
|
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
||||||
|
transform="scale(0.8)" />
|
||||||
|
</marker>
|
||||||
|
<marker
|
||||||
|
inkscape:stockid="TriangleOutL"
|
||||||
|
orient="auto"
|
||||||
|
refY="0"
|
||||||
|
refX="0"
|
||||||
|
id="marker8368-5"
|
||||||
|
style="overflow:visible"
|
||||||
|
inkscape:isstock="true">
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path8370-8"
|
||||||
|
d="M 5.77,0 -2.88,5 V -5 Z"
|
||||||
|
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
||||||
|
transform="scale(0.8)" />
|
||||||
|
</marker>
|
||||||
|
<marker
|
||||||
|
inkscape:stockid="TriangleOutL"
|
||||||
|
orient="auto"
|
||||||
|
refY="0"
|
||||||
|
refX="0"
|
||||||
|
id="marker8368-5-6"
|
||||||
|
style="overflow:visible"
|
||||||
|
inkscape:isstock="true">
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path8370-8-4"
|
||||||
|
d="M 5.77,0 -2.88,5 V -5 Z"
|
||||||
|
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
|
||||||
|
transform="scale(0.8)" />
|
||||||
|
</marker>
|
||||||
</defs>
|
</defs>
|
||||||
<sodipodi:namedview
|
<sodipodi:namedview
|
||||||
id="base"
|
id="base"
|
||||||
|
@ -339,10 +302,11 @@
|
||||||
showgrid="false"
|
showgrid="false"
|
||||||
units="px"
|
units="px"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="1920"
|
||||||
inkscape:window-height="1005"
|
inkscape:window-height="1010"
|
||||||
inkscape:window-x="1911"
|
inkscape:window-x="-7"
|
||||||
inkscape:window-y="-9"
|
inkscape:window-y="-7"
|
||||||
inkscape:window-maximized="1" />
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:document-rotation="0" />
|
||||||
<metadata
|
<metadata
|
||||||
id="metadata7">
|
id="metadata7">
|
||||||
<rdf:RDF>
|
<rdf:RDF>
|
||||||
|
@ -361,377 +325,208 @@
|
||||||
id="layer1"
|
id="layer1"
|
||||||
transform="translate(0,-552.36216)">
|
transform="translate(0,-552.36216)">
|
||||||
<rect
|
<rect
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
id="rect4684"
|
id="rect4733-3"
|
||||||
width="73.38298"
|
width="164.25298"
|
||||||
height="155.3896"
|
height="63.581898"
|
||||||
x="59.564713"
|
x="315.31018"
|
||||||
y="674.36267" />
|
y="816.20074" />
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
|
x="338.61417"
|
||||||
|
y="845.6026"
|
||||||
|
id="text4836-1"
|
||||||
|
transform="scale(0.99083586,1.0092489)"><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan4838-5"
|
||||||
|
x="338.61417"
|
||||||
|
y="845.6026"
|
||||||
|
style="font-size:17.5px;line-height:1.25">OFFLOAD FSM</tspan></text>
|
||||||
<rect
|
<rect
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.32155;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
id="rect4684-2"
|
|
||||||
width="73.38298"
|
|
||||||
height="155.3896"
|
|
||||||
x="195.53906"
|
|
||||||
y="674.36267" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
||||||
id="rect4684-2-3"
|
|
||||||
width="73.38298"
|
|
||||||
height="155.3896"
|
|
||||||
x="550.58319"
|
|
||||||
y="674.36267" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
||||||
id="rect4684-2-3-3"
|
|
||||||
width="73.38298"
|
|
||||||
height="155.3896"
|
|
||||||
x="670.82837"
|
|
||||||
y="674.36267" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
||||||
id="rect4731"
|
id="rect4731"
|
||||||
width="164.03253"
|
width="215.73892"
|
||||||
height="153.97696"
|
height="280.43463"
|
||||||
x="328.27588"
|
x="292.3212"
|
||||||
y="743.06903" />
|
y="633.37317" />
|
||||||
<rect
|
<rect
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
id="rect4733"
|
id="rect4733"
|
||||||
width="164.25298"
|
width="164.25298"
|
||||||
height="63.581898"
|
height="63.581898"
|
||||||
x="328.26917"
|
x="318.16766"
|
||||||
y="902.47766" />
|
y="729.90399" />
|
||||||
<rect
|
<rect
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
id="rect4733-2"
|
id="rect4733-2"
|
||||||
width="167.27"
|
width="167.27"
|
||||||
height="63.568466"
|
height="63.568466"
|
||||||
x="325.73627"
|
x="316.15479"
|
||||||
y="634.06213" />
|
y="660.90887" />
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
x="95.888771"
|
x="399.66528"
|
||||||
y="747.4646"
|
y="688.86981"
|
||||||
id="text4777"
|
id="text4804"><tspan
|
||||||
sodipodi:linespacing="125%"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4779"
|
|
||||||
x="95.888771"
|
|
||||||
y="747.4646"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">CDC</tspan><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
x="95.888771"
|
|
||||||
y="769.3396"
|
|
||||||
id="tspan4781"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">CYCLIC</tspan><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
x="95.888771"
|
|
||||||
y="791.2146"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle"
|
|
||||||
id="tspan4242">BUFFER</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="707.1524"
|
|
||||||
y="747.4646"
|
|
||||||
id="text4777-0"
|
|
||||||
sodipodi:linespacing="125%"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4779-0"
|
|
||||||
x="707.1524"
|
|
||||||
y="747.4646"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">CDC</tspan><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
x="707.1524"
|
|
||||||
y="769.3396"
|
|
||||||
id="tspan4781-0"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">FIFO</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="409.24677"
|
|
||||||
y="662.02307"
|
|
||||||
id="text4804"
|
|
||||||
sodipodi:linespacing="125%"><tspan
|
|
||||||
sodipodi:role="line"
|
sodipodi:role="line"
|
||||||
id="tspan4806"
|
id="tspan4806"
|
||||||
x="409.24677"
|
x="399.66528"
|
||||||
y="662.02307"
|
y="688.86981"
|
||||||
style="text-align:center;text-anchor:middle">AXI REGISTER</tspan><tspan
|
style="font-size:15px;line-height:1.25;text-align:center;text-anchor:middle">AXI REGISTER</tspan><tspan
|
||||||
sodipodi:role="line"
|
sodipodi:role="line"
|
||||||
x="409.24677"
|
x="399.66528"
|
||||||
y="680.77307"
|
y="707.61981"
|
||||||
id="tspan4808"
|
id="tspan4808"
|
||||||
style="text-align:center;text-anchor:middle">MAP</tspan></text>
|
style="font-size:15px;line-height:1.25;text-align:center;text-anchor:middle">MAP</tspan></text>
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
x="370.80606"
|
x="370.04385"
|
||||||
y="826.41919"
|
y="760.27722"
|
||||||
id="text4810"
|
|
||||||
sodipodi:linespacing="125%"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4812"
|
|
||||||
x="370.80606"
|
|
||||||
y="826.41919"
|
|
||||||
style="font-size:17.5px">MEMORY</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="-795.52979"
|
|
||||||
y="238.59225"
|
|
||||||
id="text4814"
|
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4816"
|
|
||||||
x="-795.52979"
|
|
||||||
y="238.59225"
|
|
||||||
style="font-size:17.5px">GEARBOX</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="-795.52979"
|
|
||||||
y="593.63635"
|
|
||||||
id="text4814-5"
|
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4816-3"
|
|
||||||
x="-795.52979"
|
|
||||||
y="593.63635"
|
|
||||||
style="font-size:17.5px">GEARBOX</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:14.86567879px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="351.67245"
|
|
||||||
y="932.0694"
|
|
||||||
id="text4836"
|
id="text4836"
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="scale(0.99083586,1.0092489)"><tspan
|
transform="scale(0.99083586,1.0092489)"><tspan
|
||||||
sodipodi:role="line"
|
sodipodi:role="line"
|
||||||
id="tspan4838"
|
id="tspan4838"
|
||||||
x="351.67245"
|
x="370.04385"
|
||||||
y="932.0694"
|
y="760.27722"
|
||||||
style="font-size:17.5px">OFFLOAD FSM</tspan></text>
|
style="font-size:17.5px;line-height:1.25">BYPASS</tspan></text>
|
||||||
<path
|
<path
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleOutL-5-7-7)"
|
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleOutL-5-7-7)"
|
||||||
d="m 12.66367,746.20182 38.1485,0"
|
d="m 242.97845,769.43533 h 38.1485"
|
||||||
id="path4840"
|
id="path4840"
|
||||||
inkscape:connector-curvature="0" />
|
inkscape:connector-curvature="0" />
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleOutL-5-7-7-3)"
|
|
||||||
d="m 132.92722,748.14409 52.77607,0"
|
|
||||||
id="path4840-5"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5640)"
|
|
||||||
d="m 269.54201,747.78694 51.71647,58.58885"
|
|
||||||
id="path4840-5-8"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
x="-741.50537"
|
x="-794.03333"
|
||||||
y="28.886314"
|
y="308.69855"
|
||||||
id="text5814"
|
id="text5814"
|
||||||
sodipodi:linespacing="125%"
|
transform="rotate(-90)"><tspan
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
sodipodi:role="line"
|
||||||
id="tspan5816"
|
id="tspan5816"
|
||||||
x="-741.50537"
|
x="-794.03333"
|
||||||
y="28.886314">TX_DMA</tspan></text>
|
y="308.69855"
|
||||||
<text
|
style="font-size:15px;line-height:1.25">S_AXIS</tspan></text>
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="-739.83337"
|
|
||||||
y="782.41821"
|
|
||||||
id="text5818"
|
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan5820"
|
|
||||||
x="-739.83337"
|
|
||||||
y="782.41821">DAC CORE</tspan></text>
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.47677636;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5704)"
|
|
||||||
d="m 491.98006,813.58971 51.91399,-58.15992"
|
|
||||||
id="path4840-5-8-1"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5774)"
|
|
||||||
d="m 623.69634,750.64408 39.6379,0"
|
|
||||||
id="path4840-5-8-1-9"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5850)"
|
|
||||||
d="m 743.96823,752.07266 39.6379,0"
|
|
||||||
id="path4840-5-8-1-9-3"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
||||||
id="rect4684-7"
|
|
||||||
width="73.38298"
|
|
||||||
height="155.3896"
|
|
||||||
x="59.170319"
|
|
||||||
y="855.10388" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
||||||
id="rect4684-2-8"
|
|
||||||
width="73.38298"
|
|
||||||
height="155.3896"
|
|
||||||
x="195.14468"
|
|
||||||
y="855.10388" />
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="95.494377"
|
|
||||||
y="928.20581"
|
|
||||||
id="text4777-7"
|
|
||||||
sodipodi:linespacing="125%"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4779-4"
|
|
||||||
x="95.494377"
|
|
||||||
y="928.20581"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">CDC</tspan><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
x="95.494377"
|
|
||||||
y="950.08081"
|
|
||||||
id="tspan4781-4"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">FIFO</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="-976.271"
|
|
||||||
y="238.19788"
|
|
||||||
id="text4814-0"
|
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4816-0"
|
|
||||||
x="-976.271"
|
|
||||||
y="238.19788"
|
|
||||||
style="font-size:17.5px">GEARBOX</tspan></text>
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker6190)"
|
|
||||||
d="m 58.840448,926.94302 -38.148504,0"
|
|
||||||
id="path4840-6"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker6284)"
|
|
||||||
d="m 193.73156,928.88529 -52.77607,0"
|
|
||||||
id="path4840-5-4"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker6384)"
|
|
||||||
d="m 328.2766,832.56365 -54.63489,94.89306"
|
|
||||||
id="path4840-5-8-3"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="-916.67664"
|
|
||||||
y="28.886314"
|
|
||||||
id="text5814-7"
|
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan5816-4"
|
|
||||||
x="-916.67664"
|
|
||||||
y="28.886314">RX_DMA</tspan></text>
|
|
||||||
<rect
|
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
||||||
id="rect4684-2-3-7"
|
|
||||||
width="73.38298"
|
|
||||||
height="155.3896"
|
|
||||||
x="551.33069"
|
|
||||||
y="853.44397" />
|
|
||||||
<rect
|
|
||||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
||||||
id="rect4684-2-3-3-0"
|
|
||||||
width="73.38298"
|
|
||||||
height="155.3896"
|
|
||||||
x="671.57587"
|
|
||||||
y="853.44397" />
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="707.8999"
|
|
||||||
y="926.5459"
|
|
||||||
id="text4777-0-5"
|
|
||||||
sodipodi:linespacing="125%"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4779-0-5"
|
|
||||||
x="707.8999"
|
|
||||||
y="926.5459"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">CDC</tspan><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
x="707.8999"
|
|
||||||
y="948.4209"
|
|
||||||
id="tspan4781-0-0"
|
|
||||||
style="font-size:17.5px;text-align:center;text-anchor:middle">FIFO</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="-974.61108"
|
|
||||||
y="594.38385"
|
|
||||||
id="text4814-5-4"
|
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4816-3-7"
|
|
||||||
x="-974.61108"
|
|
||||||
y="594.38385"
|
|
||||||
style="font-size:17.5px">GEARBOX</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="-918.27747"
|
|
||||||
y="782.41821"
|
|
||||||
id="text5818-4"
|
|
||||||
sodipodi:linespacing="125%"
|
|
||||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan5820-4"
|
|
||||||
x="-918.27747"
|
|
||||||
y="782.41821">ADC CORE</tspan></text>
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.47677636;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker6770)"
|
|
||||||
d="M 550.79093,927.72537 497.45888,846.38271"
|
|
||||||
id="path4840-5-8-1-6"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="cc" />
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker6894)"
|
|
||||||
d="m 672.50439,929.72537 -39.6379,0"
|
|
||||||
id="path4840-5-8-1-9-9"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker7024)"
|
|
||||||
d="m 792.77627,931.15395 -39.6379,0"
|
|
||||||
id="path4840-5-8-1-9-3-5"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
<path
|
||||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker8368)"
|
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker8368)"
|
||||||
d="m 409.85714,588.64787 0,37.14286"
|
d="m 400.27564,615.49458 v 37.14286"
|
||||||
id="path8360"
|
id="path8360"
|
||||||
inkscape:connector-curvature="0"
|
inkscape:connector-curvature="0"
|
||||||
sodipodi:nodetypes="cc" />
|
sodipodi:nodetypes="cc" />
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
x="412.35715"
|
x="408.83658"
|
||||||
y="599.505"
|
y="615.24005"
|
||||||
id="text8660"
|
id="text8660"><tspan
|
||||||
sodipodi:linespacing="125%"><tspan
|
|
||||||
sodipodi:role="line"
|
sodipodi:role="line"
|
||||||
id="tspan8662"
|
id="tspan8662"
|
||||||
x="412.35715"
|
x="408.83658"
|
||||||
y="599.505">AXI_MM</tspan></text>
|
y="615.24005"
|
||||||
|
style="font-size:15px;line-height:1.25">AXI_MM</tspan></text>
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-weight:normal;font-size:21.3333px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||||
|
x="205.43683"
|
||||||
|
y="728.12866"
|
||||||
|
id="text2292"><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan2290"
|
||||||
|
x="205.43683"
|
||||||
|
y="728.12866"
|
||||||
|
style="text-align:center;text-anchor:middle" /><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
x="205.43683"
|
||||||
|
y="754.79529"
|
||||||
|
id="tspan2294"
|
||||||
|
style="text-align:center;text-anchor:middle">SOURCE</tspan></text>
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
|
x="-797.50403"
|
||||||
|
y="500.55988"
|
||||||
|
id="text5814-4"
|
||||||
|
transform="rotate(-90)"><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan5816-4"
|
||||||
|
x="-797.50403"
|
||||||
|
y="500.55988"
|
||||||
|
style="font-size:15px;line-height:1.25">M_AXIS</tspan></text>
|
||||||
|
<path
|
||||||
|
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleOutL-5-7-7-9)"
|
||||||
|
d="m 509.23369,768.74654 h 38.1485"
|
||||||
|
id="path4840-4"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-weight:normal;font-size:21.3333px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||||
|
x="607.05249"
|
||||||
|
y="724.40942"
|
||||||
|
id="text2292-9"><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan2290-3"
|
||||||
|
x="607.05249"
|
||||||
|
y="724.40942"
|
||||||
|
style="text-align:center;text-anchor:middle" /><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
x="607.05249"
|
||||||
|
y="751.07605"
|
||||||
|
id="tspan2294-9"
|
||||||
|
style="text-align:center;text-anchor:middle">DESTINATION</tspan></text>
|
||||||
|
<path
|
||||||
|
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker8368-5)"
|
||||||
|
d="m 340.42141,914.39756 v 37.14286"
|
||||||
|
id="path8360-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cc" />
|
||||||
|
<path
|
||||||
|
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker8368-5-6)"
|
||||||
|
d="M 443.45697,962.08331 V 924.94045"
|
||||||
|
id="path8360-3-5"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cc" />
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
|
x="304.78723"
|
||||||
|
y="907.06915"
|
||||||
|
id="text5814-3"><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan5816-8"
|
||||||
|
x="304.78723"
|
||||||
|
y="907.06915"
|
||||||
|
style="font-size:15px;line-height:1.25">FIFO_WR</tspan></text>
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
|
x="409.59558"
|
||||||
|
y="907.33258"
|
||||||
|
id="text5814-3-0"><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan5816-8-3"
|
||||||
|
x="409.59558"
|
||||||
|
y="907.33258"
|
||||||
|
style="font-size:15px;line-height:1.25">FIFO_RD</tspan></text>
|
||||||
|
<rect
|
||||||
|
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
|
id="rect4733-3-2"
|
||||||
|
width="164.25298"
|
||||||
|
height="63.581898"
|
||||||
|
x="312.84314"
|
||||||
|
y="963.01801" />
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
|
x="342.2413"
|
||||||
|
y="991.07446"
|
||||||
|
id="text4836-1-1"
|
||||||
|
transform="scale(0.99083586,1.0092489)"><tspan
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan4838-5-5"
|
||||||
|
x="342.2413"
|
||||||
|
y="991.07446"
|
||||||
|
style="font-size:17.5px;line-height:1.25">Storage Unit</tspan></text>
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 21 KiB |
Loading…
Reference in New Issue