| 00:08 | RexOrCine | changed nick to: RexOrCine|away
|
| 01:24 | aSobhy | hi ,
|
| 01:24 | aSobhy | how i can submit my code and what are the requirements ?
|
| 01:24 | aSobhy | <vhdl-task1>
|
| 01:29 | aSobhy | the deliverable list **
|
| 01:42 | Umori | left the channel |
| 01:42 | Bertl | best to upload it somewhere (e.g. github) and preferably add some instructions how to build
|
| 01:43 | Bertl | double check that you use proper indentation and code formatting ...
|
| 01:48 | Bertl | then simply paste the url, either here or in private, whatever you prefer
|
| 01:56 | aSobhy | and for the simulation is a do file is acceptable or a test bench ?
|
| 01:58 | Bertl | both is fine, what tools do you use?
|
| 01:59 | aSobhy | modelSim
|
| 01:59 | Umori | joined the channel |
| 02:01 | Bertl | okay
|
| 03:34 | Y_G | joined the channel |
| 04:35 | Bertl | off to bed now ... have a good one everyone!
|
| 04:35 | Bertl | changed nick to: Bertl_zZ
|
| 05:39 | BAndiT1983|away | changed nick to: BAndiT1983
|
| 05:50 | Y_G | left the channel |
| 06:05 | BAndiT1983 | changed nick to: BAndiT1983|away
|
| 06:32 | intrac | left the channel |
| 07:19 | apurvanandan[m] | what SerDes ratio do we intend to keep in task 1 of T871 VHDL
|
| 07:42 | se6astian|away | changed nick to: se6astian
|
| 09:32 | shivamgoyal | joined the channel |
| 09:36 | se6astian | changed nick to: se6astian|away
|
| 09:40 | shivamgoyal | left the channel |
| 09:41 | shivamgoyal | joined the channel |
| 09:55 | shivamgoyal | left the channel |
| 10:50 | se6astian|away | changed nick to: se6astian
|
| 10:54 | danieeel | joined the channel |
| 10:56 | danieeeel | joined the channel |
| 10:56 | danieel | left the channel |
| 10:59 | danieeel | left the channel |
| 11:11 | shivamgoyal | joined the channel |
| 11:20 | shivamgoyal | left the channel |
| 12:10 | danieeeel | changed nick to: danieel
|
| 12:29 | shivamgoyal | joined the channel |
| 12:52 | intrac | joined the channel |
| 12:56 | shivamgoyal | left the channel |
| 13:56 | Bertl_zZ | changed nick to: Bertl
|
| 13:57 | Bertl | morning folks!
|
| 13:58 | Bertl | apurvanandan[m]: in task 1 you want to allow for 8, 10 and 12 bit on the parallel output
|
| 14:03 | se6astian | good day!
|
| 14:13 | RexOrCine|away | changed nick to: RexOrCine
|
| 14:24 | shivamgoyal | joined the channel |
| 14:28 | shivamgoyal | left the channel |
| 14:29 | shivamgoyal | joined the channel |
| 14:35 | BAndiT1983|away | changed nick to: BAndiT1983
|
| 15:45 | aSobhy_ | joined the channel |
| 15:51 | aSobhy_ | Hi
|
| 15:52 | aSobhy_ | I want to know what is the targeted fpga that i will simulate on it ?
|
| 15:57 | aSobhy_ | Iam using now quartus prime lite edition for knowing the max speed
|
| 15:58 | aSobhy_ | <VHDL chalnge task1>
|
| 16:01 | BAndiT1983 | changed nick to: BAndiT1983|away
|
| 16:06 | Bertl | well, depending on the final task you are interested in, you are going to work with Xilinx 7Series FPGA (ZYNQ or Artix) or Lattice MachXO2
|
| 16:07 | Bertl | the tools used there are Vivado (for Xilinx) and Diamond (for Lattice), both in the 'Free' (as beer) version provided from the FPGA manufacturer
|
| 16:08 | Bertl | but for the challenge itself you can use other tools as well as long as the result can be verified by us
|
| 16:14 | aSobhy_ | left the channel |
| 16:31 | aSobhy_ | joined the channel |
| 16:33 | aSobhy_ | I have test my code on quartus on fpga altera maxV and optmized it but i achived 100Mhz as a maximum speed i had reached
|
| 16:34 | Bertl | 100MHz for the serial link or the parallel data?
|
| 16:35 | aSobhy_ | I didn't use a hardened ddr or serdes i wite it my self. Can you advice me what i should do
|
| 16:35 | aSobhy_ | Serial
|
| 16:37 | Bertl | well, I just checked with the MaxV DC/Switching specs, abd about 300MHz I/O should be doable there
|
| 16:38 | Bertl | it is not a specifically fast FPGA to work with but 100MHz serial speed sounds a little low
|
| 16:38 | Bertl | but I can take a look at the code if you have something to show
|
| 16:43 | Bertl | actually the MaxV is sold as CPLD :)
|
| 16:47 | aSobhy_ | Ok iwill send my git-link
|
| 16:48 | aSobhy_ | But it is on quartus as fpga ?!
|
| 16:49 | Bertl | Quartus is the tool, Intel (former Altera) the manufacturer, MaxV the CPLD family
|
| 16:49 | BAndiT1983|away | changed nick to: BAndiT1983
|
| 16:49 | Bertl | what I'm mostly interested in is the VHDL :)
|
| 16:59 | aSobhy_ | left the channel |
| 16:59 | Bertl | aSobhy_: you might also want to get a proper IRC client instead of the web client
|
| 17:00 | Kjetil | Max10 is sold as a FPGA
|
| 17:01 | Bertl | yeah, the lines have been blurred over the years ...
|
| 17:06 | aSobhy | i have send the git link to that mail *email address removed*
|
| 17:07 | aSobhy | +3
|
| 17:10 | aSobhy | i actually use both but i will talk from the web client from now :)
|
| 17:11 | aSobhy | "+3" is a wrong type sorry for that
|
| 17:12 | Bertl | serial2parallel.vhd is a leftover?
|
| 17:13 | Bertl | well, you want to clean up the code a little bit to make it more readable, stuff like:
|
| 17:14 | Bertl | remove excessive empty lines, add spaces around operands, fix indentation to be consistent, etc
|
| 17:15 | Bertl | currently it looks more like a severe case of VHDL diarrhea ...
|
| 17:22 | Bertl | but looking at the code, I'm not really surprised you do not achieve more than 100MHz ...
|
| 17:24 | Bertl | if I'm reading the code correctly, you 'assume' that the bitstream is packetized and contains a length marker 'at the beginning'
|
| 17:33 | shivamgoyal | left the channel |
| 17:34 | aSobhy | iam really sorry serial2parallel.vhd should be removed i forgot to remove it
|
| 17:35 | aSobhy | and also ser2par.vhd was not its latest version
|
| 17:35 | aSobhy | now it is and Iam formatting the code
|
| 17:49 | aSobhy | no iam not assuming that the bitstream from the beginning produce every (8/10/12) bit from serial a corresponding parallel bits
|
| 17:49 | aSobhy | the transmition ends when the process ends
|
| 17:51 | Bertl | well, a more realistic scenario is that the serial input bitdepth can be selected somehow (e.g. via control lines) and is constant during transmission
|
| 17:55 | Bertl | but I'm fine with your scenario as well if you can speed it up :)
|
| 17:55 | Bertl | anyway, let me know when you've cleaned up the code
|
| 17:56 | aSobhy | so their would be a header of every message i receive which has the bit slip to be adjusted the next frame ?
|
| 17:56 | aSobhy | okay thanks for your help :D
|
| 17:57 | Bertl | nope, the typical setup is that the serial data has a 'known' bit depth and the data needs to be synchronized via bitslip (e.g. to training codes)
|
| 17:57 | Bertl | so, let's assume the FPGA is connected to an ADC
|
| 17:57 | Bertl | which can provide data in 8, 10 and 12bit depth
|
| 17:58 | Bertl | two control lines select the 'mode' for the ADC and in some way the mode for the deserializer as well
|
| 17:59 | Bertl | when the ADC is idle, it send a control word, let's say "BAF" which is truncated to 10/8 bit on the lower bit depths
|
| 18:00 | Bertl | link training (which is not part of task 1) would now look at the 12/10/8 bit words
|
| 18:00 | Bertl | and adjust the bitslip to match the expected training pattern
|
| 18:01 | Bertl | once that is done, the ADC is activated and the real data comes in 8/10/12 bit packets which get deserialized by your code
|
| 18:01 | se6astian | off for now
|
| 18:01 | se6astian | changed nick to: se6astian|away
|
| 18:02 | Bertl | let's say the clock for the ADC is 100MHz and it send the data at 600MHz so it can send 50M samples at 12bit, 60M samples at 10bit and 75M samples at 8bit resolution
|
| 18:02 | Bertl | *sends
|
| 18:21 | Bertl | btw, I added this example to the challenge task for clarification
|
| 18:23 | BAndiT1983 | changed nick to: BAndiT1983|away
|
| 18:59 | aSobhy | Sorry for delay i was on my way to home
|
| 19:03 | aSobhy | its a hand-shacking protocol at first right ?
|
| 19:05 | aSobhy | excuse me is there a diffrence between bitslip and bit depth
|
| 19:06 | aSobhy | ?
|
| 19:21 | se6astian|away | changed nick to: se6astian
|
| 19:26 | Bertl | no handshaking
|
| 19:26 | Bertl | https://forums.xilinx.com/t5/Spartan-Family-FPGAs/understanding-BITSLIP-one-more-time/td-p/105327
|
| 19:42 | aSobhy | ok thanks :)
|
| 19:42 | BAndiT1983|away | changed nick to: BAndiT1983
|
| 19:46 | Bertl | you're welcome!
|
| 20:02 | illwieckz | left the channel |
| 20:03 | illwieckz | joined the channel |
| 20:13 | apurvanandan[m] | Which of the 4 types of SerDes we have to implement?
|
| 20:19 | Bertl | apurvanandan[m]: 4 types?
|
| 20:56 | danieel | i dont think he meant these 4: logic, wired or, ioserdes and gt* :)
|
| 21:23 | BAndiT1983 | changed nick to: BAndiT1983|away
|
| 21:23 | BAndiT1983|away | changed nick to: BAndiT1983
|
| 22:00 | aSobhy | i have formatted the code :)
|
| 22:13 | aSobhy | but i thought that the bitslip and the bit depth are the same and i will change it
|
| 22:16 | BAndiT1983 | changed nick to: BAndiT1983|away
|
| 22:30 | se6astian | changed nick to: se6astian|away
|
| 23:00 | RexOrCine | changed nick to: RexOrCine|away
|
| 23:16 | futarisIRCcloud | joined the channel |