⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 processrxbit.asf

📁 对usb设备控制的ip核进行了重新设计并进一步优化
💻 ASF
📖 第 1 页 / 共 2 页
字号:
A 78 65 16 TEXT "Actions" | 57414,163918 1 0 0 "RxBits <= RxBitsIn;\nprocessRxBitRdy <= 1'b0;"
A 95 91 16 TEXT "Actions" | 81602,214284 1 0 0 "RxDataOut <= 8'h00;       //redundant data\nRxCtrlOut <= `DATA_STOP; //end of packet\nprocessRxByteWEn <= 1'b1;"
W 94 32 0 85 89 BEZIER "Transitions" | 41504,245373 45564,238486 43946,239209 48006,232322
W 91 32 4096 246 83 BEZIER "Transitions" | 118511,229192 108252,217383 97992,205574 87733,193765
L 90 89 0 TEXT "State Labels" | 51785,227035 1 0 0 "CHK_SE0\n/5/"
S 89 32 36864 ELLIPSE "States" | 51785,227035 6500 6500
A 88 83 4 TEXT "Actions" | 104179,197041 1 0 0 "processRxByteWEn <= 1'b0;\nRXBitStMachCurrState <= `IDLE_BIT_ST;"
I 86 32 0 Builtin Exit | 178157,29567
I 85 32 0 Builtin Entry | 37613,245373
L 84 83 0 TEXT "State Labels" | 82467,189957 1 0 0 "LAST_BIT\n/4/"
S 83 32 32768 ELLIPSE "States" | 82467,189957 6500 6500
W 82 17 8194 75 21 BEZIER "Transitions" | 74719,170800 72243,162260 51221,151750 45574,140719\
                                          39928,129688 39788,80170 47763,75675 55738,71180\
                                          102436,61038 148189,26024
W 81 17 0 20 75 BEZIER "Transitions" | 60627,212076 64687,205189 69782,189186 73842,182299
A 80 76 16 TEXT "Actions" | 95824,146799 1 0 0 "RxDataOut <= 8'h00;       //redundant data\nRxCtrlOut <= `DATA_START; //start of packet\nprocessRxByteWEn <= 1'b1;"
W 111 32 0 97 227 BEZIER "Transitions" | 66477,135648 66678,131226 66890,120750 67091,116328
W 108 101 0 102 106 BEZIER "Transitions" | 122599,92427 127505,85589 132688,76607 137595,69768
W 107 101 0 105 102 BEZIER "Transitions" | 101111,125648 105710,118844 110572,109896 115171,103091
I 106 101 0 Builtin Exit | 140400,69768
I 105 101 0 Builtin Entry | 97220,125648
L 103 102 0 TEXT "State Labels" | 118810,97708 1 0 0 "DESTUFF\n/6/"
S 102 101 45056 ELLIPSE "States" | 118810,97708 6500 6500
H 101 97 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
A 99 89 4 TEXT "Actions" | 56907,247297 1 0 0 "bitStuffError <= 1'b0;"
W 98 32 8194 89 97 BEZIER "Transitions" | 49942,220803 46756,202617 58189,166563 64651,148377
S 97 32 40964 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 66418,142124 6500 6500
L 96 97 0 TEXT "State Labels" | 66418,142124 1 0 0 "DATA"
H 122 113 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
C 121 118 0 TEXT "Conditions" | 90285,92809 1 0 0 "bitStuffError == 1'b1"
C 120 117 0 TEXT "Conditions" | 17125,90667 1 0 0 "RXBitCount == 4'h8 & bitStuffError == 1'b0"
W 119 32 8195 227 86 BEZIER "Transitions" | 70866,112476 88554,110332 126022,106808 138752,96624\
                                            151482,86440 167580,47791 175352,29567
W 118 32 8194 227 115 BEZIER "Transitions" | 69923,110435 79839,101323 101636,81685 111552,72573
W 117 32 8193 227 113 BEZIER "Transitions" | 65361,109992 60269,101550 49374,82448 44282,74006
W 116 32 0 83 86 BEZIER "Transitions" | 88704,188128 110546,183706 152420,173406 164480,164897\
                                        176540,156388 181096,131196 181431,113977 181766,96758\
                                        182570,51409 180962,29567
S 115 32 53252 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 116374,68216 6500 6500
L 114 115 0 TEXT "State Labels" | 116374,68216 1 0 0 "ERROR"
S 113 32 49156 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 41334,68216 6500 6500
L 112 113 0 TEXT "State Labels" | 41334,68216 1 0 0 "BYTE"
L 143 142 0 TEXT "State Labels" | 68810,217727 1 0 0 "WAIT_RDY\n/8/"
S 142 122 61440 ELLIPSE "States" | 68810,217727 6500 6500
A 141 136 4 TEXT "Actions" | 98360,168539 1 0 0 "processRxByteWEn <= 1'b0;"
W 140 122 0 136 139 BEZIER "Transitions" | 87355,157633 92394,150615 96149,127199 101189,120181
I 139 122 0 Builtin Exit | 103994,120181
I 138 122 0 Builtin Entry | 32350,235287
L 137 136 0 TEXT "State Labels" | 83564,162911 1 0 0 "SEND2\n/7/"
S 136 122 57344 ELLIPSE "States" | 83564,162911 6500 6500
H 129 115 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
W 159 129 0 155 251 BEZIER "Transitions" | 47328,237621 58765,237907 69242,234957 80679,235243
L 156 151 0 TEXT "State Labels" | 70001,162635 1 0 0 "CHK_RES\n/10/"
I 155 129 0 Builtin Entry | 43437,237621
I 154 129 0 Builtin Exit | 115081,122515
W 153 129 0 151 154 BEZIER "Transitions" | 75624,159375 80663,152357 107236,129533 112276,122515
A 152 151 4 TEXT "Actions" | 94367,174643 1 0 0 "processRxByteWEn <= 1'b0;\nif (RxBits == JBit)                           //if current bit is a JBit, then\n  RXBitStMachCurrState <= `IDLE_BIT_ST;       //next state is idle\nelse                                          //else\nbegin\n  RXBitStMachCurrState <= `WAIT_RESUME_ST;    //check for resume\n  resumeWaitCnt <= 5'h0;                          \nend"
S 151 129 65536 ELLIPSE "States" | 70001,162635 6500 6500
A 148 144 16 TEXT "Actions" | 66554,198501 1 0 0 "RXBitCount <= 4'h0;\nRxDataOut <= RXByte;       \nRxCtrlOut <= `DATA_STREAM; \nprocessRxByteWEn <= 1'b1;"
W 147 122 0 138 142 BEZIER "Transitions" | 36241,235287 40301,228400 58702,226995 62762,220108
W 144 122 4096 142 136 BEZIER "Transitions" | 70118,211361 75926,204431 73609,174845 79417,167915
I 175 0 130 Builtin OutPort | 78804,245816 "" ""
L 174 175 0 TEXT "Labels" | 84804,245816 1 0 0 "RxCtrlOut[7:0]"
I 173 0 130 Builtin OutPort | 79602,240762 "" ""
L 172 173 0 TEXT "Labels" | 85602,240762 1 0 0 "RxDataOut[7:0]"
I 171 0 2 Builtin OutPort | 78239,230321 "" ""
L 170 171 0 TEXT "Labels" | 84239,230321 1 0 0 "resumeDetected"
A 169 167 4 TEXT "Actions" | 55436,189333 1 0 0 "if (RxBits != KBit)  //line must leave KBit state for the end of resume\nbegin\n  RXBitStMachCurrState <= `IDLE_BIT_ST;\n  resumeDetected <= 1'b0;   //clear resume detected flag\nend"
L 168 167 0 TEXT "State Labels" | 117624,117720 1 0 0 "CHK1\n/11/"
S 167 50 69632 ELLIPSE "States" | 117624,117720 6500 6500
I 166 50 0 Builtin Entry | 96034,145660
I 165 50 0 Builtin Exit | 139214,89780
W 164 50 0 166 167 BEZIER "Transitions" | 99925,145660 104656,138676 109248,130084 113979,123100
W 163 50 0 167 165 BEZIER "Transitions" | 121415,112442 126454,105424 131369,96798 136409,89780
A 162 40 4 TEXT "Actions" | 29424,246323 1 0 0 "if (RxBits != KBit)  //can only be a resume if line remains in Kbit state\n  RXBitStMachCurrState <= `IDLE_BIT_ST;\nelse \nbegin\n  resumeWaitCnt <= resumeWaitCnt + 1'b1; \n  //if we've waited long enough, then\n  if (resumeWaitCnt == `RESUME_RX_WAIT_TIME)\n  begin	\n    RXBitStMachCurrState <= `RESUME_END_WAIT_ST; \n    resumeDetected <= 1'b1;  //report resume detected\n  end\nend"
W 161 32 0 113 86 BEZIER "Transitions" | 45583,63298 57777,53382 79524,32408 93292,27115\
                                         107061,21822 137747,20482 148467,20415 159187,20348\
                                         171381,21420 174463,22458 177545,23497 178090,26035\
                                         178157,27576
W 160 32 0 115 86 BEZIER "Transitions" | 119806,62698 125032,57070 133928,45540 139522,41252\
                                         145117,36964 157043,31068 161599,29627 166155,28187\
                                         172203,29500 175352,29567
A 191 9 4 TEXT "Actions" | 132502,217743 1 0 0 "processRxByteWEn <= 1'b0;\nRxCtrlOut <= 8'h00;\nRxDataOut <= 8'h00;\nresumeDetected <= 1'b0;\nRXBitStMachCurrState <= `IDLE_BIT_ST;\nRxBits <= 2'b00;\nRXSameBitCount <= 4'h0;\nRXBitCount <= 4'h0;\noldRXBits <= 2'b00;\nRXByte <= 8'h00;\nbitStuffError <= 1'b0;\nresumeWaitCnt <= 5'h0;\nprocessRxBitRdy <= 1'b1;"
C 188 13 0 TEXT "Conditions" | 26243,187081 1 0 0 "rst"
I 187 0 2 Builtin InPort | 183608,259648 "" ""
L 186 187 0 TEXT "Labels" | 189608,259648 1 0 0 "rst"
I 185 0 3 Builtin InPort | 183608,264702 "" ""
L 184 185 0 TEXT "Labels" | 189608,264702 1 0 0 "clk"
I 183 0 130 Builtin InPort | 152486,239964 "" ""
L 182 183 0 TEXT "Labels" | 158486,239964 1 0 0 "KBit[1:0]"
I 181 0 2 Builtin InPort | 152486,249540 "" ""
L 180 181 0 TEXT "Labels" | 158486,249540 1 0 0 "processRxBitsWEn"
I 179 0 130 Builtin InPort | 152752,245018 "" ""
L 178 179 0 TEXT "Labels" | 158752,245018 1 0 0 "RxBitsIn[1:0]"
I 177 0 2 Builtin OutPort | 78272,250604 "" ""
L 176 177 0 TEXT "Labels" | 84272,250604 1 0 0 "processRxByteWEn"
I 207 0 2 Builtin Signal | 18806,227486 "" ""
L 206 207 0 TEXT "Labels" | 21806,227486 1 0 0 "bitStuffError"
I 205 0 130 Builtin Signal | 18834,232706 "" ""
L 204 205 0 TEXT "Labels" | 21834,232706 1 0 0 "RXByte[7:0]"
I 203 0 130 Builtin Signal | 18561,238021 "" ""
L 202 203 0 TEXT "Labels" | 21561,238021 1 0 0 "oldRXBits[1:0]"
I 201 0 130 Builtin Signal | 19264,243362 "" ""
L 200 201 0 TEXT "Labels" | 22264,243362 1 0 0 "RXBitCount[3:0]"
I 199 0 130 Builtin Signal | 18422,248742 "" ""
L 198 199 0 TEXT "Labels" | 21422,248742 1 0 0 "RXSameBitCount[3:0]"
I 197 0 130 Builtin Signal | 18422,253264 "" ""
L 196 197 0 TEXT "Labels" | 21422,253264 1 0 0 "RxBits[1:0]"
I 193 0 130 Builtin Signal | 18954,263638 "" ""
L 192 193 0 TEXT "Labels" | 21954,263638 1 0 0 "RXBitStMachCurrState[1:0]"
I 211 0 130 Builtin Signal | 78080,259259 "" ""
L 210 211 0 TEXT "Labels" | 81080,259259 1 0 0 "resumeWaitCnt[4:0]"
L 209 208 0 TEXT "Labels" | 158667,234292 1 0 0 "JBit[1:0]"
I 208 0 130 Builtin InPort | 152667,234292 "" ""
L 212 213 0 TEXT "State Labels" | 42588,157720 1 0 0 "J1"
S 213 6 73748 ELLIPSE "Junction" | 42588,157720 3500 3500
H 214 213 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
I 215 214 0 Builtin Entry | 86360,167640
I 216 214 0 Builtin Exit | 129540,111760
W 217 214 0 215 216 BEZIER "Transitions" | 90251,167640 102382,150340 114603,129061 126735,111760
L 218 219 0 TEXT "State Labels" | 164672,85946 1 0 0 "J2"
S 219 6 77844 ELLIPSE "Junction" | 164672,85946 3500 3500
H 220 219 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
I 221 220 0 Builtin Entry | 86360,167640
I 222 220 0 Builtin Exit | 129540,111760
W 223 220 0 221 222 BEZIER "Transitions" | 90251,167640 102382,150340 114603,129061 126735,111760
L 226 227 0 TEXT "State Labels" | 67386,112844 1 0 0 "J3"
S 227 32 81940 ELLIPSE "Junction" | 67386,112844 3500 3500
H 228 227 0 RECT 0,0,0 0 0 1 255,255,255 0 | 15700,15700 200200,263700
I 229 228 0 Builtin Entry | 86360,167640
I 230 228 0 Builtin Exit | 129540,111760
W 231 228 0 229 230 BEZIER "Transitions" | 90251,167640 102488,150092 114497,129309 126735,111760
L 232 233 0 TEXT "Labels" | 156002,229172 1 0 0 "processRxBitRdy"
I 233 0 2 Builtin OutPort | 150002,229172 "" ""
A 234 67 16 TEXT "Actions" | 139445,159206 1 0 0 "processRxBitRdy <= 1'b1;"
A 237 102 2 TEXT "Actions" | 25628,249822 1 0 0 "if (RxBits == oldRXBits)                 //if the current 'RxBits' are the same as the old 'RxBits', then\nbegin\n  RXSameBitCount <= RXSameBitCount + 1'b1;  //inc 'RXSameBitCount'\n  if (RXSameBitCount == `MAX_CONSEC_SAME_BITS) //if 'RXSameBitCount' == 6 there has been a bit stuff error\n    bitStuffError <= 1'b1;                         //flag 'bitStuffError'\n  else                                          //else no bit stuffing error\n  begin\n    RXBitCount <= RXBitCount + 1'b1;\n    if (RXBitCount != `MAX_CONSEC_SAME_BITS_PLUS1) begin\n      processRxBitRdy <= 1'b1;                   //early indication of ready\n	end\n    RXByte <= { 1'b1, RXByte[7:1]};              //RZ bit = 1 (ie no change in 'RxBits')\n  end\nend\nelse                                            //else current 'RxBits' are different from old 'RxBits'\nbegin\n  if (RXSameBitCount != `MAX_CONSEC_SAME_BITS)  //if this is not the RZ 0 bit after 6 consecutive RZ 1s, then\n  begin\n    RXBitCount <= RXBitCount + 1'b1;\n    if (RXBitCount != 4'h7) begin\n      processRxBitRdy <= 1'b1;	               //early indication of ready\n	end\n    RXByte <= {1'b0, RXByte[7:1]};             //RZ bit = 0 (ie current'RxBits' is different than old 'RxBits')\n  end\n   RXSameBitCount <= 4'h0;                      //reset 'RXSameBitCount'\nend\noldRXBits <= RxBits;"
L 238 239 0 TEXT "Labels" | 158372,254090 1 0 0 "processRxByteRdy"
I 239 0 2 Builtin InPort | 152372,254090 "" ""
L 240 241 0 TEXT "State Labels" | 151892,179359 1 0 0 "WAIT_PRB_RDY\n/12/"
S 241 17 86016 ELLIPSE "States" | 151892,179359 6500 6500
W 242 17 8193 75 241 BEZIER "Transitions" | 83767,176813 93495,176723 135677,178559 145432,178646
C 243 242 0 TEXT "Conditions" | 82407,188660 1 0 0 "(RxBits == KBit) && (RxWireActive == 1'b1)"
C 244 76 0 TEXT "Conditions" | 137618,163943 1 0 0 "processRxByteRdy == 1'b1"
L 245 246 0 TEXT "State Labels" | 123442,233426 1 0 0 "WAIT_PRB_RDY\n/13/"
S 246 32 90112 ELLIPSE "States" | 123442,233426 6500 6500
W 247 32 8193 89 246 BEZIER "Transitions" | 58283,227149 73079,228913 102192,230896 116988,232660
C 248 247 0 TEXT "Conditions" | 63893,236141 1 0 0 "RxBits == `SE0"
C 249 91 0 TEXT "Conditions" | 115810,224225 1 0 0 "processRxByteRdy == 1'b1"
L 250 251 0 TEXT "State Labels" | 87178,235174 1 0 0 "WAIT_RDY\n/14/"
S 251 129 94208 ELLIPSE "States" | 87178,235174 6500 6500
W 252 129 0 251 151 BEZIER "Transitions" | 86179,228754 82949,208010 75931,189290 72701,168546
C 253 252 0 TEXT "Conditions" | 86956,225452 1 0 0 "processRxByteRdy == 1'b1"
A 254 252 16 TEXT "Actions" | 67337,205212 1 0 0 "RxDataOut <= 8'h00;       //redundant data\nRxCtrlOut <= `DATA_BIT_STUFF_ERROR; \nprocessRxByteWEn <= 1'b1;"
C 255 144 0 TEXT "Conditions" | 72542,211451 1 0 0 "processRxByteRdy == 1'b1"
I 257 0 2 Builtin InPort | 150840,260800 "" ""
L 256 257 0 TEXT "Labels" | 156840,260800 1 0 0 "RxWireActive"
END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -