1 |
5 |
sfielding |
VERSION=1.15
|
2 |
2 |
sfielding |
HEADER
|
3 |
|
|
FILE="processTxByte.asf"
|
4 |
|
|
FID=4094ffa4
|
5 |
|
|
LANGUAGE=VERILOG
|
6 |
|
|
ENTITY="processTxByte"
|
7 |
5 |
sfielding |
FRAMES=ON
|
8 |
9 |
sfielding |
FREEOID=1099
|
9 |
|
|
"LIBRARIES=//////////////////////////////////////////////////////////////////////\n//// ////\n//// processTxByte\n//// ////\n//// This file is part of the usbhostslave opencores effort.\n//// http://www.opencores.org/cores/usbhostslave/ ////\n//// ////\n//// Module Description: ////\n//// \n//// ////\n//// To Do: ////\n//// \n//// ////\n//// Author(s): ////\n//// - Steve Fielding, sfielding@base2designs.com ////\n//// ////\n//////////////////////////////////////////////////////////////////////\n//// ////\n//// Copyright (C) 2004 Steve Fielding and OPENCORES.ORG ////\n//// ////\n//// This source file may be used and distributed without ////\n//// restriction provided that this copyright statement is not ////\n//// removed from the file and that any derivative work contains ////\n//// the original copyright notice and the associated disclaimer. ////\n//// ////\n//// This source file is free software; you can redistribute it ////\n//// and/or modify it under the terms of the GNU Lesser General ////\n//// Public License as published by the Free Software Foundation; ////\n//// either version 2.1 of the License, or (at your option) any ////\n//// later version. ////\n//// ////\n//// This source is distributed in the hope that it will be ////\n//// useful, but WITHOUT ANY WARRANTY; without even the implied ////\n//// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR ////\n//// PURPOSE. See the GNU Lesser General Public License for more ////\n//// details. ////\n//// ////\n//// You should have received a copy of the GNU Lesser General ////\n//// Public License along with this source; if not, download it ////\n//// from http://www.opencores.org/lgpl.shtml ////\n//// ////\n//////////////////////////////////////////////////////////////////////\n//\n`timescale 1ns / 1ps\n`include \"usbSerialInterfaceEngine_h.v\"\n`include \"usbConstants_h.v\"\n"
|
10 |
2 |
sfielding |
END
|
11 |
|
|
BUNDLES
|
12 |
5 |
sfielding |
B T "Declarations" 0,0,255 0 0 1 255,255,255 0 3333 0 0000 1 "Arial" 0
|
13 |
|
|
B T "Conditions" 0,0,0 0 0 0 255,255,255 0 3333 0 0110 1 "Arial" 0
|
14 |
|
|
B F "States" 0,0,0 0 0 1 0,255,0 1 3527 1480 0000 0 "Arial" 0
|
15 |
|
|
B T "Actions" 0,0,0 0 0 1 255,255,255 0 3333 0 0000 1 "Arial" 0
|
16 |
|
|
B T "Labels" 0,0,0 0 0 0 0,0,0 0 3333 0 0000 1 "Arial" 0
|
17 |
|
|
B L "Transitions" 0,0,0 0 0 1 0,0,0 1 3527 1480 0000 0 "Arial" 0
|
18 |
|
|
B F "Ports" 0,0,0 0 0 1 0,255,255 1 3527 1480 0000 0 "Arial" 0
|
19 |
|
|
B L "Errors" 255,0,0 0 3 1 255,255,255 1 3527 1480 0000 0 "Arial" 0
|
20 |
|
|
B T "State Labels" 0,0,0 0 0 0 0,0,0 0 3333 0 0000 1 "Arial" 4
|
21 |
|
|
B F "Current State" 255,255,0 0 0 1 255,255,0 1 3527 1480 0000 0 "Arial" 0
|
22 |
|
|
B T "Comments" 157,157,157 0 0 1 255,255,255 0 3333 0 0000 0 "Arial" 0
|
23 |
|
|
B L "Info" 0,255,0 0 3 1 255,255,255 1 3527 1480 0000 0 "Arial" 0
|
24 |
|
|
B F "Junction" 0,0,0 0 0 1 255,0,0 1 3527 1480 0000 0 "Arial" 0
|
25 |
|
|
B F "Initial State Indicator" 0,0,0 0 0 1 240,140,40 1 3527 1480 0000 0 "Arial" 0
|
26 |
2 |
sfielding |
END
|
27 |
|
|
INSTHEADER 1
|
28 |
5 |
sfielding |
PAGE 12700,12700 215900,279400
|
29 |
|
|
UPPERLEFT 0,0
|
30 |
|
|
GRID=OFF
|
31 |
|
|
GRIDSIZE 5000,5000 10000,10000
|
32 |
2 |
sfielding |
END
|
33 |
|
|
INSTHEADER 874
|
34 |
5 |
sfielding |
PAGE 12700,12700 215900,279400
|
35 |
|
|
UPPERLEFT 0,0
|
36 |
|
|
GRID=OFF
|
37 |
|
|
GRIDSIZE 0,0 10000,10000
|
38 |
2 |
sfielding |
END
|
39 |
|
|
INSTHEADER 887
|
40 |
5 |
sfielding |
PAGE 12700,12700 215900,279400
|
41 |
|
|
UPPERLEFT 0,0
|
42 |
|
|
GRID=OFF
|
43 |
|
|
GRIDSIZE 0,0 10000,10000
|
44 |
2 |
sfielding |
END
|
45 |
|
|
INSTHEADER 994
|
46 |
5 |
sfielding |
PAGE 12700,12700 215900,279400
|
47 |
|
|
UPPERLEFT 0,0
|
48 |
|
|
GRID=OFF
|
49 |
|
|
GRIDSIZE 0,0 10000,10000
|
50 |
2 |
sfielding |
END
|
51 |
9 |
sfielding |
INSTHEADER 1025
|
52 |
|
|
PAGE 25400,25400 215900,279400
|
53 |
|
|
UPPERLEFT 0,0
|
54 |
|
|
GRID=OFF
|
55 |
|
|
GRIDSIZE 0,0 10000,10000
|
56 |
|
|
END
|
57 |
|
|
INSTHEADER 1034
|
58 |
|
|
PAGE 25400,25400 215900,279400
|
59 |
|
|
UPPERLEFT 0,0
|
60 |
|
|
GRID=OFF
|
61 |
|
|
GRIDSIZE 0,0 10000,10000
|
62 |
|
|
END
|
63 |
2 |
sfielding |
OBJECTS
|
64 |
12 |
sfielding |
W 1098 1035 0 1095 1097 BEZIER "Transitions" | 108942,40143 114373,39761 124823,37993 130254,37611
|
65 |
|
|
I 1097 1035 0 Builtin Exit | 133008,37611
|
66 |
|
|
A 1096 1095 4 TEXT "Actions" | 110058,56736 1 0 0 "USBWireWEn <= 1'b0;"
|
67 |
|
|
S 1095 1035 106496 ELLIPSE "States" | 102676,41870 6500 6500
|
68 |
|
|
L 1094 1095 0 TEXT "State Labels" | 102676,41870 1 0 0 "FIN\n/21/"
|
69 |
|
|
L 831 832 0 TEXT "Labels" | 21372,222732 1 0 0 "USBWireWEn"
|
70 |
|
|
I 830 0 2 Builtin OutPort | 15372,227372 "" ""
|
71 |
|
|
L 829 830 0 TEXT "Labels" | 21372,227372 1 0 0 "USBWireReq"
|
72 |
|
|
I 828 0 2 Builtin InPort | 17692,231780 "" ""
|
73 |
|
|
L 827 828 0 TEXT "Labels" | 23692,231780 1 0 0 "USBWireGnt"
|
74 |
|
|
I 826 0 2 Builtin OutPort | 15372,236188 "" ""
|
75 |
|
|
L 825 826 0 TEXT "Labels" | 21140,235724 1 0 0 "USBWireCtrl"
|
76 |
|
|
I 824 0 130 Builtin OutPort | 15604,240596 "" ""
|
77 |
|
|
L 823 824 0 TEXT "Labels" | 21604,240596 1 0 0 "USBWireData[1:0]"
|
78 |
|
|
I 822 0 130 Builtin InPort | 20959,250108 "" ""
|
79 |
|
|
L 821 822 0 TEXT "Labels" | 26959,250108 1 0 0 "TxByteCtrlIn[7:0]"
|
80 |
|
|
I 820 0 130 Builtin InPort | 20959,254515 "" ""
|
81 |
|
|
L 819 820 0 TEXT "Labels" | 26959,254515 1 0 0 "TxByteIn[7:0]"
|
82 |
|
|
I 818 0 2 Builtin OutPort | 18852,259388 "" ""
|
83 |
|
|
L 817 818 0 TEXT "Labels" | 24852,259388 1 0 0 "processTxByteRdy"
|
84 |
|
|
I 816 0 2 Builtin InPort | 20959,264028 "" ""
|
85 |
|
|
W 13 6 0 12 9 BEZIER "Transitions" | 22016,204762 26512,204498 31110,200468 35074,198608
|
86 |
|
|
I 12 6 0 Builtin Reset | 22016,204762
|
87 |
|
|
S 9 6 0 ELLIPSE "States" | 41526,197822 6500 6500
|
88 |
|
|
L 8 9 0 TEXT "State Labels" | 41526,197822 1 0 0 "START_PTBY\n/0/"
|
89 |
|
|
G 1 0 0 TEXT 0,0,0 0 0 0 255,255,255 0 3527 1480 0000 0 "Arial" 0 | 93869,266185 1 0 0 "Module: processTxByte"
|
90 |
|
|
F 6 0 671089152 185 0 RECT 0,0,0 0 0 1 255,255,255 0 | 14988,15700 199488,210298
|
91 |
|
|
L 7 6 0 TEXT "Labels" | 57079,207538 1 0 0 "prcTxB"
|
92 |
|
|
A 1088 1087 16 TEXT "Actions" | 79282,165145 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= JBit;\nUSBWireCtrl <= `TRI_STATE;"
|
93 |
|
|
C 1089 1087 0 TEXT "Conditions" | 44839,149287 1 0 0 "USBWireRdy == 1'b1"
|
94 |
|
|
A 1090 1084 4 TEXT "Actions" | 60764,178497 1 0 0 "USBWireWEn <= 1'b0;"
|
95 |
9 |
sfielding |
W 1091 6 1 1025 1034 BEZIER "Transitions" | 176852,45724 174332,42574 169925,36810 163940,34881\
|
96 |
|
|
157955,32952 139055,31533 132716,31415 126377,31297\
|
97 |
|
|
121929,32154 118701,32626
|
98 |
12 |
sfielding |
C 1092 1091 0 TEXT "Conditions" | 145670,31298 1 0 0 "fullSpeedRate == 1'b0"
|
99 |
|
|
W 1093 6 0 1034 874 BEZIER "Transitions" | 107126,38228 93109,49095 67229,69836 53212,80703
|
100 |
|
|
I 847 0 130 Builtin InPort | 125241,221252 "" ""
|
101 |
|
|
I 846 0 130 Builtin InPort | 125108,216932 "" ""
|
102 |
|
|
L 845 846 0 TEXT "Labels" | 131108,216932 1 0 0 "KBit[1:0]"
|
103 |
|
|
I 844 0 130 Builtin Signal | 69660,223196 "" ""
|
104 |
|
|
L 843 844 0 TEXT "Labels" | 72660,223196 1 0 0 "i[3:0]"
|
105 |
|
|
I 834 0 2 Builtin InPort | 17692,218324 "" ""
|
106 |
|
|
L 833 834 0 TEXT "Labels" | 23692,218324 1 0 0 "USBWireRdy"
|
107 |
9 |
sfielding |
I 832 0 2 Builtin OutPort | 15372,222732 "" ""
|
108 |
2 |
sfielding |
L 848 847 0 TEXT "Labels" | 131241,221252 1 0 0 "JBit[1:0]"
|
109 |
12 |
sfielding |
L 864 865 0 TEXT "State Labels" | 43124,173002 1 0 0 "PTBY_WAIT_EN\n/1/"
|
110 |
|
|
S 865 6 4096 ELLIPSE "States" | 43124,173002 6500 6500
|
111 |
|
|
W 866 6 0 9 865 BEZIER "Transitions" | 41794,191349 41968,188029 42333,182785 42507,179465
|
112 |
|
|
W 869 6 0 865 994 BEZIER "Transitions" | 43506,166514 43972,160806 44382,144193 44848,138485
|
113 |
|
|
C 870 869 0 TEXT "Conditions" | 44743,165433 1 0 0 "processTxByteWEn == 1'b1"
|
114 |
|
|
A 871 869 16 TEXT "Actions" | 40695,156023 1 0 0 "processTxByteRdy <= 1'b0;\nTxByte <= TxByteIn;\nTxByteCtrl <= TxByteCtrlIn;"
|
115 |
|
|
A 872 865 4 TEXT "Actions" | 55007,174633 1 0 0 "processTxByteRdy <= 1'b1;"
|
116 |
|
|
L 873 874 0 TEXT "State Labels" | 48483,85161 1 0 0 "SEND_BYTE"
|
117 |
9 |
sfielding |
S 874 6 8196 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 48483,85161 6500 6500
|
118 |
12 |
sfielding |
H 880 874 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
|
119 |
|
|
I 883 880 0 Builtin Entry | 38120,248040
|
120 |
|
|
I 884 880 0 Builtin Exit | 178131,23271
|
121 |
|
|
W 885 880 0 883 901 BEZIER "Transitions" | 42416,248040 47778,233267 52771,218493 58133,203720
|
122 |
|
|
H 895 887 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
|
123 |
|
|
S 887 6 12292 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 49971,45111 6500 6500
|
124 |
9 |
sfielding |
L 888 887 0 TEXT "State Labels" | 49971,45111 1 0 0 "STOP"
|
125 |
12 |
sfielding |
W 896 6 8194 994 874 BEZIER "Transitions" | 45464,131529 46046,122326 47391,100834 47973,91631
|
126 |
|
|
W 897 6 0 874 887 BEZIER "Transitions" | 48237,78679 48703,71573 48867,58679 49333,51573
|
127 |
2 |
sfielding |
W 898 6 0 887 865 BEZIER "Transitions" | 43587,46330 39277,46796 30872,48264 28251,49254\
|
128 |
|
|
25630,50244 23766,53274 22950,67894 22135,82515\
|
129 |
|
|
20737,137969 21261,153813 21785,169657 25281,177579\
|
130 |
|
|
27028,179792 28775,182006 32271,182938 33727,182355\
|
131 |
|
|
35183,181773 37321,179186 38486,177555
|
132 |
12 |
sfielding |
L 900 901 0 TEXT "State Labels" | 60963,197870 1 0 0 "UPDATE_BYTE\n/2/"
|
133 |
|
|
S 901 880 16384 ELLIPSE "States" | 60963,197870 6500 6500
|
134 |
|
|
A 902 901 4 TEXT "Actions" | 87131,216544 1 0 0 "i <= i + 1'b1;\nTxByte <= {1'b0, TxByte[7:1] };\nif (TxByte[0] == 1'b1) //If this bit is 1, then\n TXOneCount <= TXOneCount + 1'b1; //increment 'TXOneCount'\nelse //else this is a zero bit\nbegin\n TXOneCount <= 4'h0; //reset 'TXOneCount'\n if (TXLineState == JBit) \n TXLineState <= KBit; //toggle the line state\n else \n TXLineState <= JBit;\nend"
|
135 |
|
|
L 903 904 0 TEXT "State Labels" | 62200,167285 1 0 0 "WAIT_RDY\n/3/"
|
136 |
|
|
S 904 880 20480 ELLIPSE "States" | 62200,167285 6500 6500
|
137 |
|
|
L 905 906 0 TEXT "State Labels" | 64960,129650 1 0 0 "CHK\n/4/"
|
138 |
|
|
S 906 880 24576 ELLIPSE "States" | 64960,129650 6500 6500
|
139 |
|
|
W 908 880 0 901 904 BEZIER "Transitions" | 61196,191380 61824,178554 61181,186583 61809,173757
|
140 |
|
|
W 909 880 0 904 906 BEZIER "Transitions" | 62562,160798 63190,153505 63227,143345 63855,136052
|
141 |
|
|
C 911 909 0 TEXT "Conditions" | 63744,160236 1 0 0 "USBWireRdy == 1'b1"
|
142 |
|
|
A 912 909 16 TEXT "Actions" | 49573,154836 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= TXLineState;\nUSBWireCtrl <= `DRIVE;"
|
143 |
|
|
A 913 906 4 TEXT "Actions" | 83555,132365 1 0 0 "USBWireWEn <= 1'b0;"
|
144 |
|
|
L 914 915 0 TEXT "State Labels" | 67031,103511 1 0 0 "BIT_STUFF\n/5/"
|
145 |
|
|
S 915 880 28672 ELLIPSE "States" | 67031,103511 6500 6500
|
146 |
|
|
L 916 917 0 TEXT "State Labels" | 69840,83253 1 0 0 "WAIT_RDY2\n/6/"
|
147 |
|
|
S 917 880 32768 ELLIPSE "States" | 69840,83253 6500 6500
|
148 |
|
|
W 918 880 8193 906 915 BEZIER "Transitions" | 65281,123173 65470,118240 66017,114889 66206,109956
|
149 |
|
|
C 919 918 0 TEXT "Conditions" | 67653,122954 1 0 0 "TXOneCount == `MAX_CONSEC_SAME_BITS"
|
150 |
|
|
A 920 915 4 TEXT "Actions" | 82970,116161 1 0 0 "TXOneCount <= 4'h0; //reset 'TXOneCount'\nif (TXLineState == JBit) \n TXLineState <= KBit; //toggle the line state\nelse \n TXLineState <= JBit;"
|
151 |
|
|
W 921 880 0 917 923 BEZIER "Transitions" | 70442,76789 71070,69496 71344,53592 71972,46299
|
152 |
|
|
A 922 921 16 TEXT "Actions" | 67128,66767 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= TXLineState;\nUSBWireCtrl <= `DRIVE;"
|
153 |
|
|
S 923 880 36864 ELLIPSE "States" | 72651,39838 6500 6500
|
154 |
|
|
A 924 923 4 TEXT "Actions" | 91246,42553 1 0 0 "USBWireWEn <= 1'b0;"
|
155 |
|
|
C 925 921 0 TEXT "Conditions" | 71683,75885 1 0 0 "USBWireRdy == 1'b1"
|
156 |
|
|
L 926 923 0 TEXT "State Labels" | 72651,39838 1 0 0 "CHK_FIN\n/7/"
|
157 |
9 |
sfielding |
W 927 880 0 915 917 BEZIER "Transitions" | 67528,97031 67912,94983 68323,91700 68707,89652
|
158 |
12 |
sfielding |
W 928 880 8193 923 884 BEZIER "Transitions" | 77516,35528 81612,32648 88778,27048 101066,25480\
|
159 |
|
|
113354,23912 154429,23527 174909,23271
|
160 |
|
|
C 929 928 0 TEXT "Conditions" | 90570,32872 1 0 0 "i == 4'h8"
|
161 |
2 |
sfielding |
W 930 880 8194 923 901 BEZIER "Transitions" | 66152,39809 60904,40065 50250,40296 45386,41576\
|
162 |
|
|
40522,42856 31562,47464 29098,65320 26634,83176\
|
163 |
|
|
25738,149992 26858,168968 27978,187944 33354,197032\
|
164 |
|
|
36938,198888 40522,200744 49226,198568 51498,198152\
|
165 |
|
|
53770,197736 54409,198230 54473,198230
|
166 |
12 |
sfielding |
L 935 936 0 TEXT "State Labels" | 148958,113156 1 0 0 "PTBY_WAIT_GNT\n/8/"
|
167 |
|
|
S 936 6 40960 ELLIPSE "States" | 148958,113156 6500 6500
|
168 |
|
|
W 937 6 8193 994 936 BEZIER "Transitions" | 48651,134144 59369,131814 131883,116838 142601,114508
|
169 |
|
|
C 938 937 0 TEXT "Conditions" | 56024,136519 1 0 0 "TxByteCtrlIn == `DATA_START"
|
170 |
|
|
A 939 937 16 TEXT "Actions" | 80687,127638 1 0 0 "TXOneCount <= 4'h0; \nTXLineState <= JBit;\nUSBWireReq <= 1'b1;"
|
171 |
|
|
W 940 6 0 936 1005 BEZIER "Transitions" | 152571,107755 158885,103151 166953,83129 172936,74254
|
172 |
|
|
C 941 940 0 TEXT "Conditions" | 159104,107836 1 0 0 "USBWireGnt == 1'b1"
|
173 |
|
|
S 942 895 45056 ELLIPSE "States" | 74939,175324 6500 6500
|
174 |
|
|
L 943 942 0 TEXT "State Labels" | 74939,175324 1 0 0 "SND_SE0_2\n/9/"
|
175 |
|
|
W 944 895 0 948 942 BEZIER "Transitions" | 72730,212275 73358,204982 73632,189078 74260,181785
|
176 |
|
|
C 945 944 0 TEXT "Conditions" | 73971,211371 1 0 0 "USBWireRdy == 1'b1"
|
177 |
|
|
A 946 942 4 TEXT "Actions" | 93534,178039 1 0 0 "USBWireWEn <= 1'b0;"
|
178 |
|
|
A 947 944 16 TEXT "Actions" | 69416,202253 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= `SE0;\nUSBWireCtrl <= `DRIVE;"
|
179 |
|
|
S 948 895 49152 ELLIPSE "States" | 72128,218739 6500 6500
|
180 |
|
|
L 949 948 0 TEXT "State Labels" | 72128,218739 1 0 0 "SND_SE0_1\n/10/"
|
181 |
|
|
L 950 951 0 TEXT "State Labels" | 66294,250403 1 0 0 "CHK\n/11/"
|
182 |
|
|
S 951 895 53248 ELLIPSE "States" | 66294,250403 6500 6500
|
183 |
|
|
W 952 895 8193 951 948 BEZIER "Transitions" | 67478,244015 68286,238818 70288,230349 71096,225152
|
184 |
|
|
C 954 952 0 TEXT "Conditions" | 70699,244255 1 0 0 "TxByteCtrl == `DATA_STOP"
|
185 |
|
|
S 956 895 57344 ELLIPSE "States" | 78157,132848 6500 6500
|
186 |
|
|
L 957 956 0 TEXT "State Labels" | 78157,132848 1 0 0 "SND_J\n/12/"
|
187 |
|
|
W 958 895 0 942 956 BEZIER "Transitions" | 75377,168841 76005,161548 76957,146611 77585,139318
|
188 |
9 |
sfielding |
A 959 958 16 TEXT "Actions" | 72304,159240 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= `SE0;\nUSBWireCtrl <= `DRIVE;"
|
189 |
12 |
sfielding |
A 960 956 4 TEXT "Actions" | 96752,135563 1 0 0 "USBWireWEn <= 1'b0;"
|
190 |
|
|
C 961 958 0 TEXT "Conditions" | 76516,167828 1 0 0 "USBWireRdy == 1'b1"
|
191 |
|
|
S 962 895 61440 ELLIPSE "States" | 81045,83881 6500 6500
|
192 |
|
|
L 963 962 0 TEXT "State Labels" | 81045,83881 1 0 0 "SND_IDLE\n/13/"
|
193 |
|
|
W 964 895 0 956 962 BEZIER "Transitions" | 78681,126377 79309,119084 79833,97641 80461,90348
|
194 |
|
|
A 965 964 16 TEXT "Actions" | 75410,113723 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= JBit;\nUSBWireCtrl <= `DRIVE;"
|
195 |
|
|
A 966 962 4 TEXT "Actions" | 99640,86596 1 0 0 "USBWireWEn <= 1'b0;"
|
196 |
|
|
C 967 964 0 TEXT "Conditions" | 79852,125749 1 0 0 "USBWireRdy == 1'b1"
|
197 |
|
|
S 968 895 65536 ELLIPSE "States" | 83969,44131 6500 6500
|
198 |
|
|
L 969 968 0 TEXT "State Labels" | 83969,44131 1 0 0 "FIN\n/14/"
|
199 |
|
|
W 970 895 0 962 968 BEZIER "Transitions" | 81334,77407 81962,70114 82544,57872 83172,50579
|
200 |
|
|
A 971 970 16 TEXT "Actions" | 77621,69378 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= JBit;\nUSBWireCtrl <= `TRI_STATE;"
|
201 |
|
|
A 972 968 4 TEXT "Actions" | 102564,46846 1 0 0 "USBWireWEn <= 1'b0;\nUSBWireReq <= 1'b0; //release the wire"
|
202 |
|
|
C 973 970 0 TEXT "Conditions" | 81643,77033 1 0 0 "USBWireRdy == 1'b1"
|
203 |
|
|
I 974 895 0 Builtin Exit | 97904,23272
|
204 |
2 |
sfielding |
W 975 895 0 968 974 BEZIER "Transitions" | 85932,37938 86628,34922 87928,30000 89030,28086\
|
205 |
|
|
90132,26172 93257,24084 94765,23272
|
206 |
12 |
sfielding |
W 991 880 8195 906 884 BEZIER "Transitions" | 69617,134183 72517,135343 77069,138112 90815,138750\
|
207 |
|
|
104561,139388 153745,139620 168013,138576 182281,137532\
|
208 |
|
|
190169,133124 192141,121582 194113,110040 194113,68280\
|
209 |
|
|
192025,55114 189937,41948 185529,28723 181353,23271
|
210 |
|
|
C 990 989 0 TEXT "Conditions" | 32613,121194 1 0 0 "i != 4'h8"
|
211 |
|
|
W 989 880 8194 906 901 BEZIER "Transitions" | 58978,127109 55150,125485 47040,121872 44082,121756\
|
212 |
|
|
41124,121640 36948,124424 36020,132602 35092,140780\
|
213 |
|
|
35556,170708 38166,179350 40776,187992 50140,192687\
|
214 |
|
|
55128,195007
|
215 |
9 |
sfielding |
W 976 895 8194 951 974 BEZIER "Transitions" | 61300,246245 53760,240097 39092,228012 35032,223372\
|
216 |
|
|
30972,218732 29812,212468 29638,189094 29464,165720\
|
217 |
|
|
29928,78488 31900,55230 33872,31972 41296,26172\
|
218 |
|
|
49358,24664 57420,23156 82353,23388 94765,23272
|
219 |
12 |
sfielding |
I 977 895 0 Builtin Entry | 34452,259216
|
220 |
|
|
W 978 895 0 977 951 BEZIER "Transitions" | 38683,259216 44135,257418 54598,254006 60050,252208
|
221 |
|
|
A 979 9 4 TEXT "Actions" | 108416,207754 1 0 0 "processTxByteRdy <= 1'b0;\nUSBWireData <= 2'b00;\nUSBWireCtrl <= `TRI_STATE;\nUSBWireReq <= 1'b0;\nUSBWireWEn <= 1'b0;\ni <= 4'h0;\nTxByte <= 8'h00;\nTxByteCtrl <= 8'h00;\nTXLineState <= 2'b0;\nTXOneCount <= 4'h0;"
|
222 |
|
|
L 980 981 0 TEXT "Labels" | 72434,227674 1 0 0 "TxByte[7:0]"
|
223 |
|
|
I 981 0 130 Builtin Signal | 69434,227674 "" ""
|
224 |
|
|
L 982 983 0 TEXT "Labels" | 72201,232334 1 0 0 "TxByteCtrl[7:0]"
|
225 |
|
|
I 983 0 130 Builtin Signal | 69201,232334 "" ""
|
226 |
|
|
L 984 985 0 TEXT "Labels" | 72201,236994 1 0 0 "TXLineState[1:0]"
|
227 |
|
|
I 985 0 130 Builtin Signal | 69201,236994 "" ""
|
228 |
|
|
L 986 987 0 TEXT "Labels" | 72201,241421 1 0 0 "TXOneCount[3:0]"
|
229 |
|
|
I 987 0 130 Builtin Signal | 69201,241421 "" ""
|
230 |
|
|
A 999 885 16 TEXT "Actions" | 43433,228332 1 0 0 "i <= 4'h0;"
|
231 |
|
|
W 998 995 0 996 997 BEZIER "Transitions" | 90591,167640 102761,150317 114231,129084 126401,111760
|
232 |
|
|
I 997 995 0 Builtin Exit | 129540,111760
|
233 |
|
|
I 996 995 0 Builtin Entry | 86360,167640
|
234 |
|
|
H 995 994 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
|
235 |
|
|
S 994 6 69652 ELLIPSE "Junction" | 45260,135010 3500 3500
|
236 |
|
|
L 993 994 0 TEXT "State Labels" | 45260,135010 1 0 0 "J1"
|
237 |
|
|
L 184 185 0 TEXT "Labels" | 192136,264720 1 0 0 "clk"
|
238 |
|
|
I 185 0 3 Builtin InPort | 186136,264720 "" ""
|
239 |
|
|
L 186 187 0 TEXT "Labels" | 192243,259666 1 0 0 "rst"
|
240 |
|
|
I 187 0 2 Builtin InPort | 186243,259666 "" ""
|
241 |
|
|
C 188 13 0 TEXT "Conditions" | 25531,201445 1 0 0 "rst"
|
242 |
|
|
W 1000 6 2 1025 1011 BEZIER "Transitions" | 175446,48001 143324,42707 116663,67496 88157,75929
|
243 |
|
|
A 1001 1000 16 TEXT "Actions" | 97876,75175 1 0 0 "//actively drive the first J bit\nUSBWireData <= JBit; \nUSBWireCtrl <= `DRIVE;\nUSBWireWEn <= 1'b1;"
|
244 |
|
|
S 1005 6 73728 ELLIPSE "States" | 178403,70739 6500 6500
|
245 |
9 |
sfielding |
L 1006 1005 0 TEXT "State Labels" | 178403,71114 1 0 0 "WAIT_RDY_WIRE\n/15/"
|
246 |
12 |
sfielding |
S 1011 6 77824 ELLIPSE "States" | 81933,77802 6500 6500
|
247 |
|
|
A 1012 1011 4 TEXT "Actions" | 89664,97554 1 0 0 "USBWireWEn <= 1'b0;"
|
248 |
|
|
L 1013 1011 0 TEXT "State Labels" | 81933,77802 1 0 0 "WAIT_RDY_PKT\n/16/"
|
249 |
|
|
W 1020 6 0 1011 874 BEZIER "Transitions" | 75467,77142 69580,78790 60125,80492 54238,82140
|
250 |
|
|
L 1021 1022 0 TEXT "Labels" | 130600,229120 1 0 0 "fullSpeedRate"
|
251 |
9 |
sfielding |
I 1022 0 2 Builtin InPort | 124600,229120 "" ""
|
252 |
12 |
sfielding |
H 1027 1025 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
|
253 |
|
|
S 1025 6 81940 ELLIPSE "Junction" | 178900,48560 3500 3500
|
254 |
|
|
L 1026 1025 0 TEXT "State Labels" | 178900,48560 1 0 0 "J2"
|
255 |
|
|
I 1028 1027 0 Builtin Entry | 86360,167640
|
256 |
|
|
I 1029 1027 0 Builtin Exit | 129540,111760
|
257 |
|
|
W 1030 1027 0 1028 1029 BEZIER "Transitions" | 90591,167640 102761,150317 114231,129084 126401,111760
|
258 |
|
|
W 1031 6 0 1005 1025 BEZIER "Transitions" | 178252,64280 178492,60600 178502,55716 178742,52036
|
259 |
|
|
C 1032 1031 0 TEXT "Conditions" | 160740,61840 1 0 0 "USBWireRdy == 1'b1"
|
260 |
|
|
L 1033 1034 0 TEXT "State Labels" | 112501,34575 1 0 0 "LS_START"
|
261 |
|
|
S 1034 6 86020 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 112501,34575 6500 6500
|
262 |
9 |
sfielding |
H 1035 1034 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,28400 212900,276400
|
263 |
12 |
sfielding |
S 1046 1035 90112 ELLIPSE "States" | 118913,145067 6500 6500
|
264 |
9 |
sfielding |
L 1047 1046 0 TEXT "State Labels" | 118913,145067 1 0 0 "SND_IDLE3\n/17/"
|
265 |
12 |
sfielding |
W 1060 1035 0 1068 1095 BEZIER "Transitions" | 119595,89987 115301,85752 96726,74583 101803,48306
|
266 |
|
|
C 1061 1060 0 TEXT "Conditions" | 120455,89906 1 0 0 "USBWireRdy == 1'b1"
|
267 |
|
|
A 1064 1060 16 TEXT "Actions" | 103427,83175 1 0 0 "//Drive the first JBit\nUSBWireWEn <= 1'b1;\nUSBWireData <= JBit;\nUSBWireCtrl <= `DRIVE;"
|
268 |
|
|
W 1066 1035 0 1046 1068 BEZIER "Transitions" | 119437,138596 120065,131303 120589,109860 121217,102567
|
269 |
|
|
C 1067 1066 0 TEXT "Conditions" | 120608,137968 1 0 0 "USBWireRdy == 1'b1"
|
270 |
|
|
S 1068 1035 94208 ELLIPSE "States" | 121801,96100 6500 6500
|
271 |
|
|
A 1069 1068 4 TEXT "Actions" | 140396,98815 1 0 0 "USBWireWEn <= 1'b0;"
|
272 |
|
|
A 1070 1066 16 TEXT "Actions" | 116166,125942 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= JBit;\nUSBWireCtrl <= `TRI_STATE;"
|
273 |
9 |
sfielding |
L 1071 1068 0 TEXT "State Labels" | 121801,96100 1 0 0 "SND_J1\n/18/"
|
274 |
12 |
sfielding |
L 815 816 0 TEXT "Labels" | 26959,264028 1 0 0 "processTxByteWEn"
|
275 |
|
|
A 1073 1046 4 TEXT "Actions" | 137508,147782 1 0 0 "USBWireWEn <= 1'b0;"
|
276 |
|
|
I 1075 1035 0 Builtin Entry | 75208,271435
|
277 |
|
|
S 1077 1035 98304 ELLIPSE "States" | 59497,220774 6500 6500
|
278 |
|
|
L 1078 1077 0 TEXT "State Labels" | 59497,220774 1 0 0 "SND_IDLE1\n/19/"
|
279 |
|
|
W 1079 1035 0 1075 1077 BEZIER "Transitions" | 75208,269307 75836,262014 61041,234231 58933,227242
|
280 |
|
|
W 1080 1035 0 1077 1084 BEZIER "Transitions" | 60047,214302 60675,207009 52849,177084 50437,170095
|
281 |
|
|
A 1081 1080 16 TEXT "Actions" | 52141,196692 1 0 0 "USBWireWEn <= 1'b1;\nUSBWireData <= JBit;\nUSBWireCtrl <= `TRI_STATE;"
|
282 |
|
|
C 1082 1080 0 TEXT "Conditions" | 60959,213403 1 0 0 "USBWireRdy == 1'b1"
|
283 |
|
|
S 1084 1035 102400 ELLIPSE "States" | 50985,163622 6500 6500
|
284 |
|
|
L 1085 1084 0 TEXT "State Labels" | 50985,163622 1 0 0 "SND_IDLE2\n/20/"
|
285 |
9 |
sfielding |
W 1087 1035 0 1084 1046 BEZIER "Transitions" | 51535,157150 52163,149857 101582,150816 115890,150819
|
286 |
2 |
sfielding |
END
|