3D-ACCELERATOR
S5PC100 USER’S MANUAL (REV1.0)
9.6-26
3.3 HOW TO TRANSFER GEOMETRY DATA
A geometry data is transferred from CPU or from the Vertex Buffer in the Host Interface after special registers for
Host Interface are set (explained in the next section). The geometry data is a set of input attributes to vertex
shader. In other words, a number of attributes for a vertex can be transferred from CPU or from the Vertex Buffer.
(From time to time, a vertex can have only an attribute.) A set of attributes constituting of a vertex is defined in
HI_ATTRIB0~HI_ATTRIB9. The number of components in each attributes is determined by
HI_ATTRIB
n
.NumComp. The LastAttr bit in HI_ATTRIB
n
represents whether the HI_ATTRIB
n
is used or not. For
example, HI_ATTRIB0.LastAttr = HI_ATTRIB1.LastAttr = HI_ATTRIB2.LastAttr = 0 and HI_ATTRIB3.LastAttr = 1
mean that a vertex is composed of 4 attributes. (HI_ATTRIB4.LastAttr and so on do not determine the number of
attributes for a vertex.)
The number of vertices (count) is transferred only by CPU. (The count is written into HI_DWENTRY of the Host
Interface.) Then, CPU can transfer indices or raw geometry data into the same HI_DWENTRY. However, the
Vertex Buffer can feed only geometry data to the Host Interface. The usage of the Vertex Buffer is determined by
HI_CONTROL.EnVB. If the Vertex Buffer is used, indices are required to index the geometry data in the Vertex
Buffer. The required indices can be sent by CPU (index-transfer mode) or can be generated in the Host Interface
(auto-increment mode). There can be several indices in a DWORD from CPU depending on
HI_CONTROL.IdxType (data type of index). These transferred or generated indices are used in the following way.
1. Get
a
count
from CPU
2. Get
an
index
from CPU or previous index; // depending on HI_CONTROL.AutoInc. In Non-Index mode, 0xFFFFFFFF is used.
3.
Add HI_IDXOFFSET.VALUE to the
index
for Index mode // In Non-Index mode, this step is skipped.
4. for
each
n
from 0x0 to 0xF
5.
if(HI_CONTROL.EnVB == 1 && HI_ATTRIB[n]_VBCTRL.Range != 0 &&
index
< HI_ATTRIB[n]_VBCTRL.Range)
6.
Use DWORDs fetched from
VertexBuffer[
HI_ATTRIB
[
n
]
_VBBASE
.
Addr
+
index
*
HI_ATTRIB
[
n
]
_VBCTRL
.
Stride
]; // Index mode
7.
else
8.
Fetch DWORDs from CPU and use them as the geometry data; // Non-Index mode
9.
Transform DWORDs into floating point using
HI_ATTRIB
[
n
].
Dt
and send them to vertex shader.
10. if (
HI_ATTRIB
[
n
].LastAttrib == 1) break;
11. end
for
12. repeat step 2~11 (
count
) times. // the (
count
) value in step 1 is used.
In step 8 and 9, the number of used DWORDs is determined by HI_ATTRIB
n
.Dt (data type of transferred
DWORD) and HI_ATTRIB
n
.NumComp (the number of components for each attribute). In step 8, the Host
Interface does not recognize what the DWORDs really are. The Host Interface only fetches the required number
of DWORDs from CPU. This is the reason why CPU must transfer indices and geometry data properly.
In step 9, HI_ATTRIB[n].Dt determines how the transferred DWORD is transformed into the floating point format.
(Normalization can be performed.) Also, in the same step, the order of components of each attribute can be
switched by SrcX~SrcW in each HI_ATTRIB
n
. SrcX~SrcW is initialized as 0 value mapping first transferred data
to SrcX~SrcW. If (x, y, z, w) attribute is to be transferred in order, SrcW~SrcX must be set to the value 2’b11,
2’b10, 2’b01, 2’b00 respectively. This configuration is useful when color value is transferred in BGRA instead of
RGBA. If the number of each component is not four, then 0.0, 0.0, and 1.0 are automatically appended. For
example, if (x, y) data is transferred, then (FLOAT(x), FLOAT(y), 0.0, 1.0) is sent to the vertex shader.
Note that DWORDs transferred from CPU or in the Vertex Buffer for vertex attributes must be
DWORD aligned
. If
(8-bit x, 8-bit y, 8-bit z) is to be transferred, the last 8-bit data ([31:24] fields of the transferred DWORD) is ignored.
Note that HI_ATTRIB[n]_VBCTRL.Range must be set properly; the indices from CPU must be less than
HI_ATTRIB[n]_VBCTRL.Range.
Содержание S5PC100
Страница 1: ...USER S MANUAL S5PC100 June 2009 REV 1 01 Copyright 2009 Samsung Electronics Inc All Rights Reserved ...
Страница 13: ...PRODUCT OVERVIEW S5PC100 USER S MANUAL REV1 0 1 1 10 16 level alpha blending ITU BT601 656 format output ...
Страница 21: ...MEMORY MAP S5PC100 USER S MANUAL REV1 0 1 2 2 ...
Страница 33: ...BALL MAP SIZE POP S5PC100 USER S MANUAL REV1 0 1 1 8 VSS_HPLL AA12 VSSQ_UOTG AA19 VSS_UOTG AF21 VSS_ADC Y24 ...
Страница 34: ...S5PC100 USER S MANUAL REV1 0 BALL MAP SIZE POP 1 1 9 1 4 MCP CONNECTION ...
Страница 49: ...IROM CODE S5PC100 USER S MANUAL REV1 0 2 6 4 12 Mhz 300 0 Mhz 100 0 Mhz 79 5 Mhz 20 6 Mhz ...
Страница 159: ...S5PC100 USER S MANUAL REV1 0 CLOCK CONTROLLER 2 3 9 Figure 2 3 3 S5PC100 Clock Generation Circuit1 ...
Страница 174: ...CLOCK CONTROLLER S5PC100 USER S MANUAL REV1 0 2 3 24 Rs 0ohm Rf 1Mohm CL 10 35pF ...
Страница 322: ...CORESIGHT S5PC100 USER S MANUAL REV1 0 3 2 4 Figure 3 2 2 S5PC100 Coresight Structure ...
Страница 328: ...CORESIGHT S5PC100 USER S MANUAL REV1 0 3 2 10 Figure 3 2 6 Structure of the Coresight DAP Components ...
Страница 330: ...CORESIGHT S5PC100 USER S MANUAL REV1 0 3 2 12 Figure 3 2 7 ETB Block Diagram ...
Страница 345: ...S5PC100 USER S MANUAL REV1 0 ASYNC BRIDGE 3 4 3 Figure 3 4 2 Asynchronous Bridge Components ...
Страница 359: ...S5PC100 USER S MANUAL REV1 0 VECTORED INTERRUPT CONTROLLER 4 1 3 Figure 4 1 2 VIC Daisy Chain ...
Страница 524: ...S5PC100 USER S MANUAL REV1 0 CF CONTROLLER 5 5 29 48 DO9 Data 9 CF_D 9 49 D10 Data 10 CF_D 10 50 GND Ground ...
Страница 545: ...EXTERNAL BUS INTERFACE S5PC100 USER S MANUAL REV1 0 5 6 2 3 BLOCK DIAGRAM Figure 5 6 1 Memory Interface Through EBI ...
Страница 651: ...S5PC100 USER S MANUAL REV1 0 UART 8 1 27 Figure 8 1 10 UINTSP UINTP and UINTM block diagram ...
Страница 652: ...UART S5PC100 USER S MANUAL REV1 0 8 1 28 NOTES ...
Страница 743: ...S5PC100 USER S MANUAL REV1 0 MIPI HSI INTERFACE CONTROLLER 8 6 13 ...
Страница 756: ...MIPI HSI INTERFACE CONTROLLER S5PC100 USER S MANUAL REV1 0 8 6 26 NOTES ...
Страница 800: ...MIPI CSIS S5PC100 USER S MANUAL REV1 0 8 8 10 NOTES ...
Страница 816: ...USB HOST CONTROLLER S5PC100 USER S MANUAL REV1 0 8 9 16 ...
Страница 926: ...MODEM INTERFACE S5PC100 USER S MANUAL REV1 0 8 11 4 4 ADDRESS MAPPING Figure 8 11 2 MODEM I F Address Mapping ...
Страница 935: ...S5PC100 USER S MANUAL REV1 0 MODEM INTERFACE 8 11 13 NOTES ...
Страница 1019: ...S5PC100 USER S MANUAL REV1 0 DISPLAY CONTROLLER 9 1 5 Figure 9 1 2 Block Diagram of the Data Flow ...
Страница 1110: ...IMAGE ROTATOR S5PC100 USER S MANUAL REV1 0 9 2 2 3 1 ORIGINAL IMAGE 3 2 FLIP VERTICAL 3 3 FLIP HORIZONTAL ...
Страница 1111: ...S5PC100 USER S MANUAL REV1 0 IMAGE ROTATOR 9 2 3 3 4 180 DEGREE ROTATION ...
Страница 1112: ...IMAGE ROTATOR S5PC100 USER S MANUAL REV1 0 9 2 4 3 5 90 AND 270 DEGREE ROTATION ...
Страница 1118: ...S5PC100 USER S MANUAL REV1 0 CAMERA INTERFACE 9 3 3 Figure 9 3 2 Camera Interface Overview ...
Страница 1181: ...JPEG S5PC100 USER S MANUAL REV1 0 9 4 6 Figure 9 4 5 YCbCr4 2 2 Color Format ...
Страница 1199: ...JPEG S5PC100 USER S MANUAL REV1 0 9 4 24 NOTES ...
Страница 1245: ...3D ACCELERATOR S5PC100 USER S MANUAL REV1 0 9 6 18 ...
Страница 1310: ...S5PC100 USER S MANUAL REV1 0 3D ACCELERATOR 9 6 83 Figure 9 6 18 Per Fragment Function Block Diagram ...
Страница 1321: ...3D ACCELERATOR S5PC100 USER S MANUAL REV1 0 9 6 94 Interface with AXI Bus FIMG_3DSEV1 1 AXI DMA support AMBA AXI BUS protocol ...
Страница 1353: ...TVOUT VIDEO DAC S5PC100 USER S MANUAL REV1 0 9 7 32 ...
Страница 1452: ...S5PC100 USER S MANUAL REV1 0 VIDEO PROCESSOR 9 8 43 NOTES ...
Страница 1482: ...MIXER S5PC100 USER S MANUAL REV1 0 9 9 30 NOTES ...
Страница 1584: ...MFC MULTI FORMAT CODEC S5PC100 USER S MANUAL REV1 0 9 11 16 5 2 ENCODING FLOW Figure 9 11 11 Encoding Flow ...
Страница 1664: ...S5PC100 USER S MANUAL REV1 0 I2S CONTROLLER 5 1CH 10 2 31 NOTES ...
Страница 1701: ...AC97 CONTROLLER S5PC100 USER S MANUAL REV1 0 10 4 18 NOTES ...
Страница 1731: ...SPDIF TRANSMITTER S5PC100 USER S MANUAL REV1 0 10 6 16 NOTES ...
Страница 1744: ...S5PC100 USER S MANUAL REV1 0 ADC AND TOUCH SCREEN INTERFACE 10 7 13 NOTES ...
Страница 1750: ...KEYPAD INTERFACE S5PC100 USER S MANUAL REV1 0 10 8 6 Figure 10 8 7 Keypad I F Block Diagram ...
Страница 1755: ...S5PC100 USER S MANUAL REV1 0 KEYPAD INTERFACE 10 8 11 NOTES ...
Страница 1779: ...SECURE DOMAIN MANAGER S5PC100 USER S MANUAL REV1 0 11 2 22 NOTES ...
Страница 1841: ...S5PC100 USER S MANUAL REV1 0 ELECTRICAL DATA 12 1 9 EXTCLK tRESW nRESET Figure 12 1 4 Manual Reset Input Timing ...
Страница 1846: ...ELECTRICAL DATA S5PC100 USER S MANUAL REV1 0 12 1 14 6 ONENAND AC ELECTRICAL CHARACTERISTICS Figure 12 1 7 OneNand Flash Timing ...