Could it be because the serial_COM to usb dongle (ftdi in my case). Those work with such chunks/packets.
Could it be because the serial to usb dongle (ftdi in my case). Those work with such chunks/packets.
I corrected my findings above - it does not miss but inserts newline as you wrote.. The full list you may find above in the jpg picture
words - here with the long list I have now - it starts ok, then it misses X words periodically after 1025bytes, finishes ok.. CORRECTION: it does not miss but inserts \n - so my bad..
This is with my longest words list.. It periodically cuts making \n after aprox 1025 bytes (the yellow arrows show where ). It does not miss words. Your bin from 13:13..
This is with my longest words list.. It periodically cuts making \n after aprox 1025 bytes (the yellow arrows show where ) Your bin from 13:13..
This is with my longest words list.. It periodically cuts making \n after ~1025 bytes (the yellow arrows show where ) Your bin from 13:13..
words - here with the long list I have now - it starts ok, then it misses X words periodically after 1025bytes, finishes ok.. CORRECTION: it does not misses but inserts \n - so my bad..
words - here with the long list I have now - it starts ok, then it misses X words periodically after 1025bytes, finishes ok.. CORRECTION it does not musses but inserts \n so my bad..
This is with my longest words list.. It periodically cuts making \n after 1025 bytes (the yellow arrows show where ) Your bin from 13:13..
This is with my longest words list.. It periodically miss after 1025 bytes (the yellow arrows show where it stops printing out). Your bin from 13:13..
words - It shows first ~1019 bytes, then misses the following X, and then continues to show the last ~462bytes of the complete words list.. SO the full list misses around 1kbytes in the ~middle.. My list is ~2456bytes long (when I copy the "words" into notepad).
words - It shows first 1019 bytes, then misses the following X, and then continues to show the last 462bytes of the complete words list.. SO the full list misses around 1kbytes in the ~middle.. My list is 2456bytes long (when I copy the "words" into notepad).
words - It shows first 1019 bytes, then misses the following X, and then continues to show the last 462bytes of the complete words list.. SO the full list misses around 1kbytes in the ~middle.. My list is 2456bytes long (when I copy the list into notepad).
words - It shows first 1019 bytes, then misses the following X, and then continues to show the last 462bytes of the complete words list.. SO the full list misses around 1kbytes in the middle..
Another interesting observation - when printing out the mandelbrot demo (made of chars) it waits till the \n and then prints out the entire line. In TTerm I see the individual chars coming (there are large diffs in the speeds it prints out the individual chars because of math). So in the first moment I thought it got frozen.. :-)
Another interesting observation - when printing out the mandelbrot demo (made of chars) it waits till the \n and then prints out the entire line. In TTerm I see the individual chars coming (there are large diff in the speeds it prints out the individual chars because of math). So in the first moment I thought it got frozen.. :-)
Another interesting observation - when printing out the madelbrot demo (made of chars) it waits till the \n and then prints out the entire line. In TTerm I see the individual chars coming (there are large diff in the speeds it prints out the individual chars because of math). So in the first moment I thought it got frozen.. :-)
It is now 2456 bytes (incl. spaces between words), I think 4kB buffer/line would be ok.. Hmm, that is for 16kB mecrisp in fpga, people with large 32bit mcus might get it even bigger. So 64kB line would be perhaps ok.. :) :)
It is now 2456 bytes, I think 4kB buffer/line would be ok.. Hmm, that is for 16kB mecrisp in fpga, people with large 32bit mcus might get it even bigger. So 64kB line would be perhaps ok.. :) :)
It is now 2456 bytes, I think 4kB buffer would be ok.. Hmm, that is for 16kB mecrisp in fpga, people with large 32bit mcus might get it even bigger. So 64kB would be perhaps ok.. :) :)
It is now 2456 bytes, I think 4kB buffer would be ok..
The words shows more words now, but not all.. My words are 2456 bytes, and not all uploaded yet.. ok. words mandel mag next 2sq fsq nexty nextx ys! xs! zy zx y x falog fpow flog fln (log) fraction integer> >integer lbase epsilon fexp ^fraction ^integer (!) d>u d0< f** fatan2 facos fasin (fasin) fatan dom2|3 dom3 dom2 (fatan) (taylor2) 2degrees ftan fsincos fcos fsin >range -taylor +taylor (taylor) >taylor rad>deg deg>rad e pi F# (f#) _f# F.S fd abort" FVARIABLE FCONSTANT >FLOAT -trailing flfrac flexp...
The words shows more words now, but not all.. ok. words mandel mag next 2sq fsq nexty nextx ys! xs! zy zx y x falog fpow flog fln (log) fraction integer> >integer lbase epsilon fexp ^fraction ^integer (!) d>u d0< f** fatan2 facos fasin (fasin) fatan dom2|3 dom3 dom2 (fatan) (taylor2) 2degrees ftan fsincos fcos fsin >range -taylor +taylor (taylor) >taylor rad>deg deg>rad e pi F# (f#) _f# F.S fd abort" FVARIABLE FCONSTANT >FLOAT -trailing flfrac flexp flint fdigit? flgood fsign FSQRT d< FE. FS. (E.)...
I rebuilt my fpga and the 921600 upload works fine. The syncing with "ok" is/was the way to go, sure..
Hi Jim, one thing I always wanted to have is to assign a special char or char sequence or a special color when the mecrisp returns "?" (because of an error in words defs) as to find the returned "?" within a large upload is difficult.. I've been using TeraTerm in Win11 (my fpga wired over serial/ usb chip) and I need at least 15ms line delay there. Interestingly it uploaded with your terminal fine. Hopefully not matter of luck :) :)
Hi Jim, one thing I always wanted to have is to assign a special char or char sequence or a special color when the mecrisp returns "?" (because of an error) as to find the returned "?" within a large upload is difficult.. I've been using TeraTerm in Win11 (my fpga wired over serial/ usb chip) and I need at least 15ms line delay there. Interestingly it uploaded with your terminal fine. Hopefully not matter of luck :) :)
Hi Jim, one thing I always wanted is to assign a special char or char sequence or a special color when the mecrisp returns "?" (because of an error) as to find the "?" within a large upload is difficult.. I've been using TeraTerm in Win11 (my fpga wired over serial/ usb chip) and I need at least 15ms line delay there. Interestingly it uploaded with your terminal fine. Hopefully not matter of luck :) :)
Hi Jim, one thing I always wanted is to assign a special char or char sequence or a special color when the mecrisp returns "?" (because of an error) as to find the "?" within a large upload is difficult.. I've been using TeraTerm in Win11 and I need at least 15ms line delay there. Interestingly it uploaded with your terminal fine. Hopefully not matter of luck :) :)
Hi Jim, one thing I always wanted is to assign a special char or char sequence or a special color when the mecrisp returns "?" (because of an error) as to find it in a large upload is difficult.. I've been using TeraTerm in Win11 and I need at least 15ms line delay there. Interestingly it uploaded with your terminal fine. Hopefully not matter of luck :) :)
It seems it works in win11, it has uploaded a large file fine.. I wonder what is the line delay hardcoded in there (if any)? PS: with "words" I got the "line too long" PS C:\Users\user> C:\Users\user\Desktop\forthcon.exe -b 115200 -d "COM3" ok. ok. ok. » line too long, discarded 2! 2@ cmove> cmove fill sfind align aligned words link@ here tib init forth >in base state /string type count .x .x2 bl cr space c! c@ emit key key? emit? pause nop um/mod * um* d2* d0= m+ s>d dabs dnegate d- d+ depth io@...
It seems it work in win11, it has uploaded a large file fine.. I wonder what is the line delay hardcoded (if any)? PS: with "words" I got the "line too long" PS C:\Users\user> C:\Users\user\Desktop\forthcon.exe -b 115200 -d "COM3" ok. ok. ok. » line too long, discarded 2! 2@ cmove> cmove fill sfind align aligned words link@ here tib init forth >in base state /string type count .x .x2 bl cr space c! c@ emit key key? emit? pause nop um/mod * um* d2* d0= m+ s>d dabs dnegate d- d+ depth io@ io! nip over...
FYI - in case you want to play with the "48bit" floating point and the TEK graphics - here you may find the libs I made long time back: https://github.com/igor-m/UPduino-Mecrisp-Ice-15kB/tree/master The floating point runs on the 16bit j1a (ie. mecrisp-ice, or now mecrisp-XC6), therefore "48bit".. Mecrisp-XC6 2.7 ok. 6 set-precision ok. f# 2.43555434e-10 pi f* fe. 765.151959e-12 ok. f# 4.345345e356 flog fe. 356.638024e0 ok. The TeraTerm supports TEK graphics, so after switching into its VT-TEK window...
Here are the necessary files for building up the j1a with mecrisp. The ucf file is the constraints file with pin defines (might be different ext name and format in Radiant). As I wrote above the verilog files may need some finetuning/editing when using with different IDEs and fpgas.. PS: A decade++ back I started with mecrisp on stm32 and then moved to ice40UP5k. Tried various IDEs and environments (Yosys, IceCube2, Radiant, Apio). Here is the repo with my experiments, made for beginners .. Mind...
Here are the necessary files for building up the j1a with mecrisp. The ucf file is the constraints file with pin defines (might be different ext name and format in Radiant). As I wrote above the verilog files may need some finetuning/editing when using with different IDEs and fpgas..
Here are the necessary files for building up the j1a with mecrisp. The ucf file is the constraints file with pin defines (might be different ext name and format in Radiant). As I wrote above the verilog files may need some finetuning/editing when using in different IDEs..
Here are the necessary files for building up the j1a with mecrisp. The ucf file is the constraints file win pin defines (might be different name and format in Radiant). As I wrote above the verilog files may need some finetuning/editing when using in different IDEs..
Aaron, with Radiant IDE you do not need yosys suite. What you need is the gforth and fpc (freepascal). I've been playing with xilinx in ise14.7, so it is a similar situation. I installed the gforth and fpc into linux mint and while in the HX8k it will then compile the bram memory hex file fine (simply with ./compile). You will get errors with yosys but you do not need yosys. so ignore them simply. You need only 1 hex file from the built directory (iceimage.hex) with the bram memory content. Put it...
Aaron, with Radiant IDE you do not need yosys suite. What you need is the gforth and fpc (freepascal). I've been playing with xilinx in ise14.7, so it is a similar situation. I installed the gforth and fpc into linux mint and while in the HX8k it will then compile the bram memory hex file fine (simply with ./compile). You will get errors with yosys but you do not need yosys. so ignore them simply. You need only 1 hex file from the built directory (iceimage.hex) with the bram memory content. Put it...
Aaron, with Radiant IDE you do not need yosys suite. What you need is the gforth and fpc (freepascal). I've been playing with xilinx in ise14.7, so it is a similar situation. I installed the gforth and fpc into linux mint and while in the HX8k it will then compile the bram memory hex file fine (simply with ./compile). You will get errors with yosys but you do not need yosys. so ignore them simply. You need only 1 hex file from the built directory (iceimage.hex) with the bram memory content. Put it...
Aaron, with Radiant IDE you do not need yosys suite. What you need is the gforth and fpc (freepascal). I've been playing with xilinx in ise14.7, so it is a similar situation. I installed the gforth and fpc into linux mint and the HX8k will then compile the bram memory hex file fine. You will get errors with yosys but you do not need yosys. so ignore them simply. You need only 1 hex file from the built directory (iceimage.hex) with the bram memory content. Put it into your Radiant environment and...
Aaron, with Radiant IDE you do not need yosys suite. What you need is the gforth and fpc (freepascal). I've been playing with xilinx in ise14.7, so it is a similar situation. I installed the gforth and fpc into linux mint and the HX8k will then compile the bram memory hex file fine. You will get errors with yosys but you do not need yosys. so ignore them simply. You need only 1 hex file from the built directory (iceimage.hex) with the bram memory content. Put it into your Radiant environment and...
Aaron, with Radiant IDE you do not need yosys suite. What you need is the gforth and fpc (freepascal). I've been playing with xilinx in ise14.7, so it is a similar situation. I installed the gforth and fpc into linux mint and the HX8k will then compile the bram memory hex file fine. You will get errors with yosys but you do not need yosys. so ignore them simply. You need only 1 hex file from the built directory with the bram memory content. Put it into your Radiant environment and include into the...
Hi Matthias, thanks for the clarification! I've overlooked those mod and do-loop are heavier in the j1a! Perhaps I might try the dualport (it is supported in XC6), I've also found the "divide" IP generator for 2 types of divide in the ISE14.7.. If it does not fit in the small XC6 I have here a beefy virtex6 too.. So there is a space for experiments (like a 32core j1a in the virtex :) ). For time being I'll stay with it as-is as I need it for a simpler data transfer from my hw experiments in fpga....
With millis running in hw (none interrupts running) I get the same GCD elapsed time (1.821sec).. Weird, I would not expect the j1a 3x slower than a stm32 M0 in that GCD benchmark at almost identical clocks..
Hi, after a looong time I returned to the mecrisp - and I have a question to the experts here, if I may: what is the difference between the j1-universal-16kb-quickstore.v and j1-universal-16kb-dualport.v performance wise? What can I see there the quickstore is using a fetch, while dualport is not. I think I can use dualport on xilinx.. I've been currently using the quickstore, but the GCD benchmark running on my xilinx XC6 @50MHz (the modded HX8k) is 3x slower (1.8secs vs 0.6secs) than the 48MHz...
Hi, after a looong time I returned to the mecrisp - and I have a question to the experts here, if I may: what is the difference between the j1-universal-16kb-quickstore.v and j1-universal-16kb-dualport.v performance wise? What can I see there the quickstore is using a fetch, while dualport is not. I think I can use dualport on xilinx.. I've been currently using the quickstore, but the GCD benchmark running on my xilinx XC6 @50MHz (the modded HX8k) is 3x slower (1.8secs vs 0.6secs) than the 48MHz...
Hi, after a looong time I returned to the mecrisp - and I have a question to the experts here, if I may: what is the difference between the j1-universal-16kb-quickstore.v and j1-universal-16kb-dualport.v performance wise? What can I see there the quickstore is using a fetch, while dualport is not. I think I can use dualport on xilinx.. I've been currently using the quickstore, but the GCD benchmark running on my xilinx XC6 @50MHz (the modded HX8k) is 3x slower (1.8secs vs 0.6secs) than the 48MHz...
Hi, after a looong time I returned to the mecrisp - and I have a question to the experts here, if I may: what is the difference between the j1-universal-16kb-quickstore.v and j1-universal-16kb-dualport.v performance wise? What can I see there the quickstore is using a fetch, while dualport is not. I think I can use dualport on xilinx.. I've been currently using the quickstore, but the GCD benchmark running on my xilinx XC6 @50MHz (the modded HX8k) is 3x slower (1.8secs vs 0.6secs) than the 48MHz...
Hi, after a looong time I returned to the mecrisp - and I have a question to the experts here, if I may: what is the difference between the j1-universal-16kb-quickstore.v and j1-universal-16kb-dualport.v performance wise? What can I see there the quickstore is using a fetch, while dualport is not. I think I can use dualport on xilinx.. I've been currently using the quickstore, but the GCD benchmark running on my xilinx XC6 @50MHz (the modded HX8k) is 3x slower (1.8secs vs 0.6secs) than the 48MHz...
Hi, after a looong time I returned to the mecrisp - and I have a question to the experts here, if I may: what is the difference between the j1-universal-16kb-quickstore.v and j1-universal-16kb-dualport.v performance wise? What can I see there the quickstore is using a fetch, while dualport is not. I think I can use dualport on xilinx.. I've been currently using the quickstore, but the GCD benchmark running on my xilinx XC6 @50MHz (the modded HX8k) is 3x slower (1.8secs vs 0.6secs) than the 48MHz...
Hi, after a looong time I returned to the mecrisp - and I have a question to the experts here, if I may: what is the difference between the j1-universal-16kb-quickstore.v and j1-universal-16kb-dualport.v performance wise? What can I see there the quickstore is using a fetch, while dualport is not. I think I can use dualport on xilinx.. I've been currently using the quickstore, but the GCD test running on my xilinx XC6 @50MHz (the modded HX8k) is 3x slower (1.8secs vs 0.6secs) than the 48MHz stm32...