[Doc] Add SOFA CHD to documentation. Clean up redundant document between HD FPGA IPs

This commit is contained in:
tangxifan 2020-12-09 16:18:04 -07:00
parent d9e965cf3b
commit 9f82ac7636
15 changed files with 84 additions and 1746 deletions

View File

@ -7,3 +7,5 @@
sofa_hd/index sofa_hd/index
qlsofa_hd/index qlsofa_hd/index
sofa_chd/index

View File

@ -1,253 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xl="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="628.9111 1022.3935 418.46777 349.9947" width="418.46777" height="349.9947">
<defs>
<font-face font-family="Times" font-size="16" panose-1="0 0 5 0 0 0 0 9 0 0" units-per-em="1000" underline-position="-75.68359" underline-thickness="49.316406" slope="-937.5" x-height="446.28906" cap-height="652.34375" ascent="750" descent="-250" font-style="italic" font-weight="400">
<font-face-src>
<font-face-name name="Times-Italic"/>
</font-face-src>
</font-face>
<font-face font-family="Times" font-size="16" panose-1="0 0 8 0 0 0 0 9 0 0" units-per-em="1000" underline-position="-66.40625" underline-thickness="67.87109" slope="-937.5" x-height="462.8906" cap-height="668.9453" ascent="750" descent="-250" font-style="italic" font-weight="700">
<font-face-src>
<font-face-name name="Times-BoldItalic"/>
</font-face-src>
</font-face>
<marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" stroke-linejoin="miter" stroke-miterlimit="10" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="#7f8080">
<g>
<path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/>
</g>
</marker>
<marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker_2" stroke-linejoin="miter" stroke-miterlimit="10" viewBox="-9 -4 10 8" markerWidth="10" markerHeight="8" color="#7f8080">
<g>
<path d="M -8 0 L 0 3 L 0 -3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/>
</g>
</marker>
<font-face font-family="Times New Roman" font-size="13" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
<font-face-src>
<font-face-name name="TimesNewRomanPS-BoldMT"/>
</font-face-src>
</font-face>
</defs>
<metadata> Produced by OmniGraffle 7.18\n2020-11-19 23:01:04 +0000</metadata>
<g id="switch" fill="none" stroke="none" stroke-opacity="1" stroke-dasharray="none" fill-opacity="1">
<title>switch</title>
<g id="switch_boundary">
<title>boundary</title>
<g id="Graphic_567">
<rect x="744.75" y="1083.375" width="210.375" height="232.875" fill="#ffff80"/>
<path d="M 955.125 1083.375 L 744.75 1083.375 L 744.75 1316.25 L 955.125 1316.25 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="4.0,4.0" stroke-width="1"/>
</g>
<g id="Line_568">
<line x1="955.125" y1="1235.206" x2="923.7813" y2="1235.9262" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_569">
<path d="M 859.332 1083 L 859.332 1101.6667 L 886.389 1101.4805" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_570">
<text transform="translate(829.418 1059.375)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">CCFF_IN</tspan>
</text>
</g>
<g id="Line_571">
<line x1="937.694" y1="1107.1693" x2="955.1471" y2="1107" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_572">
<text transform="translate(961.4805 1096.0833)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">CCFF_OUT</tspan>
</text>
</g>
<g id="Line_573">
<line x1="744.75" y1="1022.8935" x2="744.75" y2="1324" stroke="#7f8080" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_574">
<text transform="translate(756.29 1027.8935)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="700" fill="black" x="0" y="15">FPGA Fabric</tspan>
</text>
</g>
<g id="Graphic_575">
<text transform="translate(642.9111 1027.8935)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="700" fill="black" x="0" y="15">SoC Interface</tspan>
</text>
</g>
<g id="Line_576">
<line x1="963.5113" y1="1050.1534" x2="639.311" y2="1051.8419" marker-end="url(#FilledArrow_Marker)" marker-start="url(#FilledArrow_Marker_2)" stroke="#7f8080" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
</g>
<g id="switch_base">
<title>base</title>
<g id="Graphic_514">
<text transform="translate(684.168 1226.7952)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">SOC_IN</tspan>
</text>
</g>
<g id="Graphic_515">
<text transform="translate(670.8359 1277.3506)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">SOC_OUT</tspan>
</text>
</g>
<g id="Line_517">
<line x1="892.0556" y1="1236.2952" x2="743.3945" y2="1236.2952" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_518">
<line x1="795.4195" y1="1203.125" x2="795.4195" y2="1277.7382" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_519">
<line x1="907.753" y1="1203.0717" x2="907.7329" y2="1226.9284" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_522">
<line x1="956.4805" y1="1287.1037" x2="811.0889" y2="1287.1088" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_523">
<text transform="translate(961.4805 1277.602)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">FPGA_OUT</tspan>
</text>
</g>
<g id="Graphic_524">
<text transform="translate(960.125 1224.8457)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">FPGA_IN</tspan>
</text>
</g>
<g id="Graphic_542">
<ellipse cx="795.4195" cy="1199.125" rx="2.53125404468923" ry="3.00000479370559" fill="black"/>
<ellipse cx="795.4195" cy="1199.125" rx="2.53125404468923" ry="3.00000479370559" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_543">
<line x1="743.3945" y1="1199.675" x2="904.2251" y2="1199.0847" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_544">
<text transform="translate(673.5117 1190.3125)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">SOC_DIR</tspan>
</text>
</g>
<g id="Graphic_545">
<ellipse cx="907.7563" cy="1199.0717" rx="2.53125404468911" ry="3.00000479370553" fill="black"/>
<ellipse cx="907.7563" cy="1199.0717" rx="2.53125404468911" ry="3.00000479370553" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Group_552">
<g id="Graphic_556">
<path d="M 907.8607 1148.8333 L 907.8607 1156.8333 C 909.8607 1176.8333 915.8607 1178.8333 927.8607 1188.8333 C 939.8607 1178.8333 945.8607 1176.8333 947.8607 1156.8333 L 947.8607 1148.8333 C 939.8607 1150.8333 938.8607 1151.8333 927.8607 1152.8333 C 916.8607 1151.8333 915.8607 1150.8333 907.8607 1148.8333" fill="white"/>
<path d="M 907.8607 1148.8333 L 907.8607 1156.8333 C 909.8607 1176.8333 915.8607 1178.8333 927.8607 1188.8333 C 939.8607 1178.8333 945.8607 1176.8333 947.8607 1156.8333 L 947.8607 1148.8333 C 939.8607 1150.8333 938.8607 1151.8333 927.8607 1152.8333 C 916.8607 1151.8333 915.8607 1150.8333 907.8607 1148.8333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_555">
<line x1="937.8607" y1="1138.8333" x2="937.8607" y2="1150.3333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_554">
<line x1="917.8607" y1="1138.8333" x2="917.8607" y2="1148.8333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_553">
<line x1="927.8607" y1="1187.541" x2="927.8607" y2="1198.8333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
</g>
<g id="Graphic_558">
<rect x="887.002" y="1091.0833" width="29.338917" height="32.89894" fill="white"/>
<rect x="887.002" y="1091.0833" width="29.338917" height="32.89894" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(892.002 1099.7567)" fill="black">
<tspan font-family="Times New Roman" font-size="13" font-weight="700" fill="black" x="1.7285404" y="12">FF</tspan>
</text>
</g>
<g id="Graphic_557">
<path d="M 886.944 1112.6843 L 895.7246 1115.9805 L 886.944 1119.2767 Z" fill="#ccc"/>
<path d="M 886.944 1112.6843 L 895.7246 1115.9805 L 886.944 1119.2767 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Line_559">
<line x1="743.3945" y1="1116.7604" x2="886.944" y2="1116.0036" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_560">
<text transform="translate(657.4961 1107.5)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">PROG_CLK</tspan>
</text>
</g>
<g id="Line_561">
<path d="M 917.341 1107.3747 L 937.694 1107.1693 L 937.8607 1138.8333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_562">
<line x1="740.5195" y1="1138.8849" x2="917.341" y2="1138.25" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_563">
<text transform="translate(658.1836 1129.5417)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">IO_ISOL_N</tspan>
</text>
</g>
<g id="Line_564">
<line x1="909.2875" y1="1199.0536" x2="927.8607" y2="1198.8333" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_565">
<line x1="778.791" y1="1287.0613" x2="746.0703" y2="1286.9666" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_583">
<path d="M 950.625 1109.5817 L 950.625 1103.8796 L 950.625 1103.8796 L 950.625 1101.0285 L 961.0859 1106.7306 L 950.625 1112.4328 L 950.625 1109.5817 Z" fill="#c0ffff"/>
<path d="M 950.625 1109.5817 L 950.625 1103.8796 L 950.625 1103.8796 L 950.625 1101.0285 L 961.0859 1106.7306 L 950.625 1112.4328 L 950.625 1109.5817 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_582">
<path d="M 950.625 1237.0586 L 950.625 1231.3565 L 950.625 1231.3565 L 950.625 1228.5054 L 961.0859 1234.2075 L 950.625 1239.9097 L 950.625 1237.0586 Z" fill="#c0ffff"/>
<path d="M 950.625 1237.0586 L 950.625 1231.3565 L 950.625 1231.3565 L 950.625 1228.5054 L 961.0859 1234.2075 L 950.625 1239.9097 L 950.625 1237.0586 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_581">
<path d="M 957.7109 1289.815 L 957.7109 1284.1128 L 957.7109 1284.1128 L 957.7109 1281.2617 L 947.25 1286.9639 L 957.7109 1292.666 L 957.7109 1289.815 Z" fill="#ff8080"/>
<path d="M 957.7109 1289.815 L 957.7109 1284.1128 L 957.7109 1284.1128 L 957.7109 1281.2617 L 947.25 1286.9639 L 957.7109 1292.666 L 957.7109 1289.815 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_584">
<path d="M 856.313 1078.2217 L 862.0151 1078.2217 L 862.0151 1078.2217 L 864.8662 1078.2217 L 859.1641 1088.6826 L 853.4619 1078.2217 L 856.313 1078.2217 Z" fill="#c0ffff"/>
<path d="M 856.313 1078.2217 L 862.0151 1078.2217 L 862.0151 1078.2217 L 864.8662 1078.2217 L 859.1641 1088.6826 L 853.4619 1078.2217 L 856.313 1078.2217 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_585">
<path d="M 740.0195 1119.8511 L 740.0195 1114.1489 L 740.0195 1114.1489 L 740.0195 1111.2979 L 750.4805 1117 L 740.0195 1122.7021 L 740.0195 1119.8511 Z" fill="#c0ffff"/>
<path d="M 740.0195 1119.8511 L 740.0195 1114.1489 L 740.0195 1114.1489 L 740.0195 1111.2979 L 750.4805 1117 L 740.0195 1122.7021 L 740.0195 1119.8511 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_586">
<path d="M 740.0195 1141.8927 L 740.0195 1136.1906 L 740.0195 1136.1906 L 740.0195 1133.3395 L 750.4805 1139.0417 L 740.0195 1144.7438 L 740.0195 1141.8927 Z" fill="#c0ffff"/>
<path d="M 740.0195 1141.8927 L 740.0195 1136.1906 L 740.0195 1136.1906 L 740.0195 1133.3395 L 750.4805 1139.0417 L 740.0195 1144.7438 L 740.0195 1141.8927 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_587">
<path d="M 742.0195 1239.1968 L 742.0195 1233.4946 L 742.0195 1233.4946 L 742.0195 1230.6436 L 752.4805 1236.3457 L 742.0195 1242.0479 L 742.0195 1239.1968 Z" fill="#c0ffff"/>
<path d="M 742.0195 1239.1968 L 742.0195 1233.4946 L 742.0195 1233.4946 L 742.0195 1230.6436 L 752.4805 1236.3457 L 742.0195 1242.0479 L 742.0195 1239.1968 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_588">
<path d="M 750.4805 1201.9761 L 750.4805 1196.2739 L 750.4805 1196.2739 L 750.4805 1193.4229 L 740.0195 1199.125 L 750.4805 1204.8271 L 750.4805 1201.9761 Z" fill="#ff8080"/>
<path d="M 750.4805 1201.9761 L 750.4805 1196.2739 L 750.4805 1196.2739 L 750.4805 1193.4229 L 740.0195 1199.125 L 750.4805 1204.8271 L 750.4805 1201.9761 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_589">
<path d="M 750.4805 1289.815 L 750.4805 1284.1128 L 750.4805 1284.1128 L 750.4805 1281.2617 L 740.0195 1286.9639 L 750.4805 1292.666 L 750.4805 1289.815 Z" fill="#ff8080"/>
<path d="M 750.4805 1289.815 L 750.4805 1284.1128 L 750.4805 1284.1128 L 750.4805 1281.2617 L 740.0195 1286.9639 L 750.4805 1292.666 L 750.4805 1289.815 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_590">
<path d="M 869.7197 1360.7393 L 869.7197 1355.0371 L 869.7197 1355.0371 L 869.7197 1352.186 L 859.2588 1357.8882 L 869.7197 1363.5903 L 869.7197 1360.7393 Z" fill="#ff8080"/>
<path d="M 869.7197 1360.7393 L 869.7197 1355.0371 L 869.7197 1355.0371 L 869.7197 1352.186 L 859.2588 1357.8882 L 869.7197 1363.5903 L 869.7197 1360.7393 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_591">
<text transform="translate(882.4463 1348.25)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">output pin</tspan>
</text>
</g>
<g id="Graphic_593">
<text transform="translate(762.583 1348.3882)" fill="black">
<tspan font-family="Times" font-size="16" font-style="italic" font-weight="400" fill="black" x="0" y="15">input pin</tspan>
</text>
</g>
<g id="Graphic_592">
<path d="M 744.75 1360.601 L 744.75 1354.899 L 744.75 1354.899 L 744.75 1352.0479 L 755.2109 1357.75 L 744.75 1363.4521 L 744.75 1360.601 Z" fill="#c0ffff"/>
<path d="M 744.75 1360.601 L 744.75 1354.899 L 744.75 1354.899 L 744.75 1352.0479 L 755.2109 1357.75 L 744.75 1363.4521 L 744.75 1360.601 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
</g>
<g id="Graphic_595">
<path d="M 893.0556 1219.8457 L 922.3945 1236.2952 L 893.0556 1252.7446 Z" fill="white"/>
<path d="M 893.0556 1219.8457 L 922.3945 1236.2952 L 893.0556 1252.7446 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_597">
<path d="M 810.0889 1270.6599 L 780.75 1287.1094 L 810.0889 1303.5588 Z" fill="white"/>
<path d="M 810.0889 1270.6599 L 780.75 1287.1094 L 810.0889 1303.5588 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_600">
<ellipse cx="937.4107" cy="1107.5328" rx="2.53125404468917" ry="3.00000479370565" fill="black"/>
<ellipse cx="937.4107" cy="1107.5328" rx="2.53125404468917" ry="3.00000479370565" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_602">
<circle cx="795.4195" cy="1275.1599" r="4.50000719055851" fill="white"/>
<circle cx="795.4195" cy="1275.1599" r="4.50000719055851" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_603">
<circle cx="917.8945" cy="1146.375" r="4.50000719055851" fill="white"/>
<circle cx="917.8945" cy="1146.375" r="4.50000719055851" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 18 KiB

View File

@ -1,320 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xl="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="23.467723 118.41154 683.4357 506.50814" width="683.4357" height="506.50814">
<defs>
<font-face font-family="Times New Roman" font-size="26" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
<font-face-src>
<font-face-name name="TimesNewRomanPS-BoldMT"/>
</font-face-src>
</font-face>
<marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="Arrow_Marker" stroke-linejoin="miter" stroke-miterlimit="10" viewBox="-1 -3 7 6" markerWidth="7" markerHeight="6" color="black">
<g>
<path d="M 4.8 0 L 0 -1.8 L 0 1.8 Z" fill="none" stroke="currentColor" stroke-width="1"/>
</g>
</marker>
<font-face font-family="Times New Roman" font-size="16" panose-1="2 2 7 3 6 5 5 9 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="-1020.812" x-height="438.96484" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-style="italic" font-weight="700">
<font-face-src>
<font-face-name name="TimesNewRomanPS-BoldItalicMT"/>
</font-face-src>
</font-face>
<font-face font-family="Times New Roman" font-size="16" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
<font-face-src>
<font-face-name name="TimesNewRomanPS-BoldMT"/>
</font-face-src>
</font-face>
<marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="Arrow_Marker_2" stroke-linejoin="miter" stroke-miterlimit="10" viewBox="-1 -3 7 6" markerWidth="7" markerHeight="6" color="#ff2600">
<g>
<path d="M 4.8 0 L 0 -1.8 L 0 1.8 Z" fill="none" stroke="currentColor" stroke-width="1"/>
</g>
</marker>
<marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="Arrow_Marker_3" stroke-linejoin="miter" stroke-miterlimit="10" viewBox="-1 -3 7 6" markerWidth="7" markerHeight="6" color="#ff2600">
<g>
<path d="M 4.8 0 L 0 -1.8 L 0 1.8 Z" fill="none" stroke="currentColor" stroke-width="1"/>
</g>
</marker>
</defs>
<metadata> Produced by OmniGraffle 7.18\n2020-11-17 17:11:00 +0000</metadata>
<g id="fpga_arch" fill="none" stroke="none" stroke-opacity="1" stroke-dasharray="none" fill-opacity="1">
<title>fpga_arch</title>
<g id="fpga_arch_legend">
<title>legend</title>
<g id="Graphic_2945">
<rect x="123.1162" y="150.12" width="493.92" height="447.12" fill="#ccc"/>
<rect x="123.1162" y="150.12" width="493.92" height="447.12" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2946">
<text transform="translate(116.94136 118.41154)" fill="black">
<tspan font-family="Times New Roman" font-size="26" font-weight="700" fill="black" x="0" y="23">FPGA</tspan>
</text>
</g>
<g id="Line_2947">
<line x1="109.44" y1="612.32" x2="204.68613" y2="612.32" marker-end="url(#Arrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2948">
<text transform="translate(226.76 602.24)" fill="black">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="black" x="0" y="14">x</tspan>
</text>
</g>
<g id="Line_2949">
<line x1="109.44" y1="611.32" x2="109.44" y2="512.9" marker-end="url(#Arrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2950">
<text transform="translate(106.38922 476.3203)" fill="black">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="black" x="0" y="14">y</tspan>
</text>
</g>
</g>
<g id="fpga_arch_chain">
<title>chain</title>
<g id="Graphic_2895">
<rect x="136.8" y="171.51984" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="136.8" y="171.51984" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(141.8 187.24023)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="8.614643" y="31.679688">[1][12]</tspan>
</text>
</g>
<g id="Line_2897">
<line x1="106.38179" y1="204.91992" x2="122.9" y2="204.91992" marker-end="url(#Arrow_Marker_2)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2898">
<text transform="translate(28.467723 196.08007)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14">SC_HEAD</tspan>
</text>
</g>
<g id="Graphic_2902">
<rect x="136.8" y="265.68" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="136.8" y="265.68" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(141.8 281.4004)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="9.056049" y="31.679688">[1][11]</tspan>
</text>
</g>
<g id="Line_2901">
<line x1="173.0709" y1="239.32" x2="173.0709" y2="251.78" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_2903">
<line x1="173.57886" y1="333.48015" x2="173.80953" y2="349.1014" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2904">
<text transform="translate(165.07089 364.84015)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2908">
<rect x="136.8" y="425.2398" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="136.8" y="425.2398" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(141.8 440.9602)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="12.614643" y="31.679688">[1][2]</tspan>
</text>
</g>
<g id="Line_2907">
<line x1="173" y1="392.4" x2="173.02027" y2="411.33983" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2906">
<rect x="136.8" y="519.4" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="136.8" y="519.4" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(141.8 535.1204)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="12.614643" y="31.679688">[1][1]</tspan>
</text>
</g>
<g id="Line_2905">
<line x1="173.0709" y1="493.04" x2="173.0709" y2="505.5" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2918">
<rect x="239.76" y="171.51984" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="239.76" y="171.51984" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(244.76 187.24023)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="8.614643" y="31.679688">[2][12]</tspan>
</text>
</g>
<g id="Line_2917">
<line x1="313.30178" y1="204.40795" x2="330.1012" y2="204.17718" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2916">
<rect x="239.76" y="265.68" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="239.76" y="265.68" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(244.76 281.4004)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="9.056049" y="31.679688">[2][11]</tspan>
</text>
</g>
<g id="Line_2915">
<line x1="276.0309" y1="264.68" x2="276.0309" y2="252.22" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_2914">
<line x1="276.96" y1="362" x2="276.72933" y2="346.37874" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2913">
<text transform="translate(268.0309 364.84015)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2912">
<rect x="239.76" y="425.2398" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="239.76" y="425.2398" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(244.76 440.9602)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="12.614643" y="31.679688">[2][2]</tspan>
</text>
</g>
<g id="Line_2911">
<line x1="275.99407" y1="424.23983" x2="275.9738" y2="405.3" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2910">
<rect x="239.76" y="519.4" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="239.76" y="519.4" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(244.76 535.1204)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="12.614643" y="31.679688">[2][1]</tspan>
</text>
</g>
<g id="Line_2909">
<line x1="276.0309" y1="518.4" x2="276.0309" y2="505.94" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_2919">
<line x1="210.34178" y1="552.80006" x2="225.86" y2="552.80006" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2940">
<rect x="422.96" y="171.51984" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="422.96" y="171.51984" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(427.96 187.24023)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="5.0560493" y="31.679688">[11][12]</tspan>
</text>
</g>
<g id="Line_2939">
<line x1="384.48" y1="205" x2="409.06" y2="204.97367" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2938">
<rect x="422.96" y="265.68" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="422.96" y="265.68" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(427.96 281.4004)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="5.4974556" y="31.679688">[11][11]</tspan>
</text>
</g>
<g id="Line_2937">
<line x1="459.2309" y1="239.32" x2="459.2309" y2="251.78" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_2936">
<line x1="459.73884" y1="333.48015" x2="459.9695" y2="349.1014" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2935">
<text transform="translate(451.2309 364.84015)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2934">
<rect x="422.96" y="425.2398" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="422.96" y="425.2398" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(427.96 440.9602)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="9.056049" y="31.679688">[11][2]</tspan>
</text>
</g>
<g id="Line_2933">
<line x1="459.16" y1="392.4" x2="459.18025" y2="411.33983" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2932">
<rect x="422.96" y="519.4" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="422.96" y="519.4" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(427.96 535.1204)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="9.056049" y="31.679688">[11][1]</tspan>
</text>
</g>
<g id="Line_2931">
<line x1="459.2309" y1="493.04" x2="459.2309" y2="505.5" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2930">
<rect x="525.92" y="171.51984" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="525.92" y="171.51984" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(530.92 187.24023)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="4.614643" y="31.679688">[12][12]</tspan>
</text>
</g>
<g id="Line_2929">
<line x1="599.46176" y1="204.91992" x2="620.8706" y2="204.91992" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2928">
<rect x="525.92" y="265.68" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="525.92" y="265.68" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(530.92 281.4004)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="5.0560493" y="31.679688">[12][11]</tspan>
</text>
</g>
<g id="Line_2927">
<line x1="562.1909" y1="264.68" x2="562.1909" y2="252.22" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_2926">
<line x1="563.12" y1="362" x2="562.8893" y2="346.37874" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2925">
<text transform="translate(554.1909 364.84015)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2924">
<rect x="525.92" y="425.2398" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="525.92" y="425.2398" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(530.92 440.9602)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="8.614643" y="31.679688">[12][2]</tspan>
</text>
</g>
<g id="Line_2923">
<line x1="562.15406" y1="424.23983" x2="562.1338" y2="405.3" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2922">
<rect x="525.92" y="519.4" width="72.54179" height="66.800154" fill="#005cff"/>
<rect x="525.92" y="519.4" width="72.54179" height="66.800154" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
<text transform="translate(530.92 535.1204)" fill="white">
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="14.821674" y="14">CLB</tspan>
<tspan font-family="Times New Roman" font-size="16" font-weight="700" fill="white" x="8.614643" y="31.679688">[12][1]</tspan>
</text>
</g>
<g id="Line_2921">
<line x1="562.1909" y1="518.4" x2="562.1909" y2="505.94" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Line_2920">
<line x1="496.50177" y1="552.80006" x2="512.02" y2="552.80006" marker-end="url(#Arrow_Marker_3)" stroke="#ff2600" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
<g id="Graphic_2941">
<text transform="translate(355.64 196.08007)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2942">
<text transform="translate(638.7706 196.08007)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14">SC_TAIL</tspan>
</text>
</g>
<g id="Graphic_2951">
<text transform="translate(355.64 364.84015)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2952">
<text transform="translate(355.64 295.16)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2953">
<text transform="translate(355.64 449.80006)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
<g id="Graphic_2955">
<text transform="translate(355.64 543.9602)" fill="#ff2600">
<tspan font-family="Times New Roman" font-size="16" font-style="italic" font-weight="700" fill="#ff2600" x="0" y="14"></tspan>
</text>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 22 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 72 KiB

View File

@ -1,4 +1,4 @@
.. _datasheet_sofa_hd: .. _datasheet_qlsofa_hd:
QLSOFA HD QLSOFA HD
QLSOFA HD QLSOFA HD

View File

@ -8,29 +8,5 @@ Circuit Designs
I/O Circuit I/O Circuit
^^^^^^^^^^^ ^^^^^^^^^^^
As shown in :numref:`fig_qlsofa_hd_embedded_io_schematic`, the I/O circuit used in the I/O tiles of the FPGA fabric (see :numref:`fig_qlsofa_hd_fpga_arch`) is an digital I/O cell with SOFA CHD FPGA share the same I/O circuit design as SOFA HD FPGA.
See details at :ref:`sofa_hd_circuit_design_io`.
- An **active-low** I/O isolation signal ``IO_ISOL_N`` to set the I/O in input mode. This is to avoid any unexpected output signals to damage circuits outside the FPGA due to configurable memories are not properly initialized.
.. warning:: This feature may not be needed if the configurable memory cell has a built-in set/reset functionality!
- An internal protection circuitry to ensure clean signals at all the SOC I/O ports. This is to avoid
- ``SOC_OUT`` port outputs any random signal when the I/O is in input mode
- ``FPGA_IN`` port is driven by any random signal when the I/O is output mode
- An internal configurable memory element to control the direction of I/O cell
The truth table of the I/O cell is consistent with the GPIO cell of Caravel SoC, where
- When configuration bit (FF output) is logic ``1``, the I/O cell is in input mode
- When configuration bit (FF output) is logic ``0``, the I/O cell is in output mode
.. _fig_qlsofa_hd_embedded_io_schematic:
.. figure:: ./figures/qlsofa_hd_embedded_io_schematic.svg
:scale: 30%
:alt: Schematic of embedded I/O cell used in FPGA
Schematic of embedded I/O cell used in FPGA

View File

@ -8,21 +8,8 @@ Architecture
Floorplan Floorplan
^^^^^^^^^ ^^^^^^^^^
QLSOFA HD FPGA share the same floroplan as SOFA HD FPGA.
:numref:`fig_qlsofa_hd_fpga_arch` shows an overview on the architecture of the embedded FPGA fabric. See details at :ref:`sofa_hd_fpga_arch_floorplan`.
The FPGA follows a homogeneous architecture which only contains single type of tiles in the center fabric.
I/O tiles are placed at the boundary of the FPGA to interface with GPIOs and RISC-V processors (see details in :ref:`qlsofa_hd_io_resource`).
.. _fig_qlsofa_hd_fpga_arch:
.. figure:: ./figures/qlsofa_hd_fpga_arch.svg
:scale: 25%
:alt: Tile-based FPGA architecture
Tile-based FPGA architecture
.. _qlsofa_hd_fpga_arch_tiles:
Tiles Tiles
^^^^^ ^^^^^
@ -64,19 +51,5 @@ The FPGA architecture follows a tile-based organization, to exploit the fine-gra
Scan-chain Scan-chain
^^^^^^^^^^ ^^^^^^^^^^
There is a built-in scan-chain in the FPGA which connects the the `sc_in` and `sc_out` ports of CLBs in a chain (see details in :ref:`qlsofa_hd_clb_arch_scan_chain`), as illustrated in :numref:`fig_qlsofa_hd_fabric_scan_chain`. QLSOFA HD FPGA share the same floroplan as SOFA HD FPGA.
See details at :ref:`sofa_hd_fpga_arch_scan_chain`.
When `Test_en` signal is active, users can
- overwrite the contents of all the D-type flip-flops in the FPGA by feeding signals to the `SC_HEAD` port
- readback the contents of all the D-type flip-flops in the FPGA through the `SC_TAIL` port.
.. _fig_qlsofa_hd_fabric_scan_chain:
.. figure:: ./figures/qlsofa_hd_fabric_scan_chain.svg
:scale: 25%
:alt: Built-in scan-chain across FPGA
Built-in scan-chain across FPGA

View File

@ -6,7 +6,7 @@ I/O Resources
Pin Assignment Pin Assignment
^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^
The *High-Density* (HD) FPGA IP has 144 data I/O pins as shown in :numref:`fig_qlsofa_hd_fpga_io_switch`. The QLSOFA HD FPGA IP has 144 data I/O pins as shown in :numref:`fig_qlsofa_hd_fpga_io_switch`.
Among the 144 I/Os, Among the 144 I/Os,
@ -26,14 +26,14 @@ Among the 144 I/Os,
:scale: 20% :scale: 20%
:alt: I/O arrangement of FPGA IP :alt: I/O arrangement of FPGA IP
I/O arrangement of *High-Density* (HD) FPGA IP: switchable between logic analyzer and wishbone bus interface I/O arrangement of QLSOFA HD FPGA IP: switchable between logic analyzer and wishbone bus interface
.. _io_resource_qlsofa_hd_external_io: .. _io_resource_qlsofa_hd_external_io:
External I/Os External I/Os
^^^^^^^^^^^^^ ^^^^^^^^^^^^^
A SOFA HD FPGA IP contains 37 external I/O pins, including 27 data I/Os and 10 control I/Os. A QLSOFA HD FPGA IP contains 37 external I/O pins, including 27 data I/Os and 10 control I/Os.
Full details are summarized in the following table. Full details are summarized in the following table.

View File

@ -0,0 +1,16 @@
.. _datasheet_sofa_chd:
SOFA CHD
SOFA CHD
--------
.. toctree::
:maxdepth: 2
sofa_chd_fpga_arch
sofa_chd_io_resource
sofa_chd_clb_arch
sofa_chd_circuit_design

View File

@ -0,0 +1,12 @@
.. _sofa_chd_circuit_design:
Circuit Designs
---------------
.. _sofa_chd_circuit_design_io:
I/O Circuit
^^^^^^^^^^^
SOFA CHD FPGA share the same I/O circuit design as SOFA HD FPGA.
See details at :ref:`sofa_hd_circuit_design_io`.

View File

@ -0,0 +1,7 @@
.. _sofa_chd_clb_arch:
Configurable Logic Block
------------------------
The SOFA CHD FPGA IP share the same *Configurable Logic Block* (CLB) architecture as QLSOFA HD FPGA IP.
See details at :ref:`qlsofa_hd_clb_arch`.

View File

@ -0,0 +1,7 @@
.. _sofa_chd_fpga_arch:
Architecture
-------------
SOFA CHD FPGA share the same architecture as QLSOFA HD FPGA.
See full details at :ref:`qlsofa_hd_fpga_arch`.

View File

@ -0,0 +1,7 @@
.. _sofa_chd_io_resource:
I/O Resources
-------------
The SOFA CHD FPGA IP share the same I/O resource arragement as QLSOFA HD FPGA IP.
See details at :ref:`qlsofa_hd_io_resource`.

View File

@ -7,27 +7,27 @@ The High Density (HD) FPGAs are embedded FPGAs built with the Skywater 130nm Hig
.. table:: Logic capacity of High Density (HD) FPGA IPs .. table:: Logic capacity of High Density (HD) FPGA IPs
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Resource/Capacity | SOFA HD | QLSOFA HD | | Resource/Capacity | SOFA HD | QLSOFA HD | SOFA CHD |
+===============================+============+===========+ +===============================+============+===========+==========+
| Look-Up Tables [1]_ | 1152 | 1152 | | Look-Up Tables [1]_ | 1152 | 1152 | 1152 |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Flip-flops | 2304 | 2304 | | Flip-flops | 2304 | 2304 | 2304 |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Soft Adders [2]_ | N/A | 1152 | | Soft Adders [2]_ | N/A | 1152 | 1152 |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Routing Channel Width [3]_ | 40 | 60 | | Routing Channel Width [3]_ | 40 | 60 | 60 |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Max. Configuration Speed [4]_ | 50MHz | 50MHz | | Max. Configuration Speed [4]_ | 50MHz | 50MHz | 50MHz |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Max. Operating Speed [4]_ | 50MHz | 50 MHz | | Max. Operating Speed [4]_ | 50MHz | 50 MHz | 50MHz |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| User I/O Pins [5]_ | 144 | 144 | | User I/O Pins [5]_ | 144 | 144 | 144 |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Max. I/O Speed [4]_ | 33MHz | 33 MHz | | Max. I/O Speed [4]_ | 33MHz | 33MHz | 33MHz |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
| Core Voltage | 1.8V | 1.8V | | Core Voltage | 1.8V | 1.8V | 1.8V |
+-------------------------------+------------+-----------+ +-------------------------------+------------+-----------+----------+
.. [1] counted by 4-input fracturable Look-Up Tables (LUTs), each of which can operate as dual-output 3-input LUTs or single-output 4-input LUT. .. [1] counted by 4-input fracturable Look-Up Tables (LUTs), each of which can operate as dual-output 3-input LUTs or single-output 4-input LUT.

View File

@ -3,8 +3,8 @@
You can adapt this file completely to your liking, but it should at least You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive. contain the root `toctree` directive.
Welcome to SKywater-OpenFPGA documentation! Welcome to SOFA documentation!
=========================================== ==============================
.. toctree:: .. toctree::
:caption: Device Family :caption: Device Family