litex.git
9 years agotransport: remove dma_setup and pio_setup_d2h (not needed our controller)
Florent Kermarrec [Fri, 12 Dec 2014 17:16:30 +0000 (18:16 +0100)]
transport: remove dma_setup and pio_setup_d2h (not needed our controller)

9 years agoremove Layer in module names
Florent Kermarrec [Fri, 12 Dec 2014 13:35:48 +0000 (14:35 +0100)]
remove Layer in module names

9 years agotransport: merge cmd and data Sink/Source, will be easier
Florent Kermarrec [Fri, 12 Dec 2014 13:31:00 +0000 (14:31 +0100)]
transport: merge cmd and data Sink/Source, will be easier

9 years agotransport_tb: add basic test for TX path
Florent Kermarrec [Fri, 12 Dec 2014 10:22:21 +0000 (11:22 +0100)]
transport_tb: add basic test for TX path

9 years agotransport: add transport_tb skeleton and fix compilation
Florent Kermarrec [Thu, 11 Dec 2014 23:56:29 +0000 (00:56 +0100)]
transport: add transport_tb skeleton and fix compilation

9 years agotransport: code SATATransportLayerRX (untested)
Florent Kermarrec [Thu, 11 Dec 2014 20:56:56 +0000 (21:56 +0100)]
transport: code SATATransportLayerRX (untested)

9 years agotransport: code SATATransportLayerTX (untested)
Florent Kermarrec [Thu, 11 Dec 2014 19:19:14 +0000 (20:19 +0100)]
transport: code SATATransportLayerTX (untested)

9 years agophy: remove ALIGN primitives on RX path
Florent Kermarrec [Thu, 11 Dec 2014 17:35:56 +0000 (18:35 +0100)]
phy: remove ALIGN primitives on RX path

9 years agolink: add auto-check on link_tb
Florent Kermarrec [Sat, 6 Dec 2014 13:35:18 +0000 (14:35 +0100)]
link: add auto-check on link_tb

9 years agolink: fix CONT on RX path
Florent Kermarrec [Sat, 6 Dec 2014 00:23:03 +0000 (01:23 +0100)]
link: fix CONT on RX path

9 years agolink: test HOLD on RX path
Florent Kermarrec [Fri, 5 Dec 2014 20:27:26 +0000 (21:27 +0100)]
link: test HOLD on RX path

9 years agolink: test RX path
Florent Kermarrec [Fri, 5 Dec 2014 19:26:09 +0000 (20:26 +0100)]
link: test RX path

9 years agolink_tb: use LinkTXPacket and LinkRXPacket from bfm
Florent Kermarrec [Fri, 5 Dec 2014 17:00:02 +0000 (18:00 +0100)]
link_tb: use LinkTXPacket and LinkRXPacket from bfm

9 years agomove test
Florent Kermarrec [Fri, 5 Dec 2014 16:48:01 +0000 (17:48 +0100)]
move test

9 years agobfm: add FIS decoding/encoding
Florent Kermarrec [Fri, 5 Dec 2014 00:13:55 +0000 (01:13 +0100)]
bfm: add FIS decoding/encoding

9 years agobfm: rewrite it and split Physical / Link layers
Florent Kermarrec [Thu, 4 Dec 2014 22:43:21 +0000 (23:43 +0100)]
bfm: rewrite it and split Physical / Link layers

9 years agotransport: define FIS layouts
Florent Kermarrec [Wed, 3 Dec 2014 15:32:55 +0000 (16:32 +0100)]
transport: define FIS layouts

9 years agolink: split SATALinkLayer in SATALinkLayerTX and SATALinkLayerRX
Florent Kermarrec [Wed, 3 Dec 2014 14:29:01 +0000 (15:29 +0100)]
link: split SATALinkLayer in SATALinkLayerTX and SATALinkLayerRX

9 years agolink: manage CONT on RX path
Florent Kermarrec [Wed, 3 Dec 2014 10:50:31 +0000 (11:50 +0100)]
link: manage CONT on RX path

9 years agolink: manage CONT on TX path
Florent Kermarrec [Wed, 3 Dec 2014 10:12:26 +0000 (11:12 +0100)]
link: manage CONT on TX path

9 years agolink: simplify BFM
Florent Kermarrec [Wed, 3 Dec 2014 08:17:51 +0000 (09:17 +0100)]
link: simplify BFM

9 years agolink: manage hold
Florent Kermarrec [Tue, 2 Dec 2014 20:34:16 +0000 (21:34 +0100)]
link: manage hold

9 years agolink: add CRC check to BFM
Florent Kermarrec [Tue, 2 Dec 2014 19:02:43 +0000 (20:02 +0100)]
link: add CRC check to BFM

9 years agolink: fix link_tb (due to others modifications)
Florent Kermarrec [Tue, 2 Dec 2014 18:53:13 +0000 (19:53 +0100)]
link: fix link_tb (due to others modifications)

9 years agolink: improve and clean up crc_tb, scrambler_tb
Florent Kermarrec [Tue, 2 Dec 2014 18:24:46 +0000 (19:24 +0100)]
link: improve and clean up crc_tb, scrambler_tb

9 years agolink: wip bfm
Florent Kermarrec [Wed, 12 Nov 2014 17:20:34 +0000 (18:20 +0100)]
link: wip bfm

9 years agolink: prepare simulation
Florent Kermarrec [Tue, 11 Nov 2014 17:47:34 +0000 (18:47 +0100)]
link: prepare simulation

9 years agoclean up
Florent Kermarrec [Tue, 11 Nov 2014 15:15:28 +0000 (16:15 +0100)]
clean up

9 years agouse new EndpointDescription
Florent Kermarrec [Tue, 11 Nov 2014 13:54:54 +0000 (14:54 +0100)]
use new EndpointDescription

9 years agolink: SATALinkLayer skeleton
Florent Kermarrec [Tue, 11 Nov 2014 11:26:32 +0000 (12:26 +0100)]
link: SATALinkLayer skeleton

9 years agophy: use primitives dict and use only sata.std
Florent Kermarrec [Tue, 11 Nov 2014 09:19:24 +0000 (10:19 +0100)]
phy: use primitives dict and use only sata.std

9 years agophy: send 2 ALIGN primitives every 256 DWORDs
Florent Kermarrec [Tue, 11 Nov 2014 08:57:43 +0000 (09:57 +0100)]
phy: send 2 ALIGN primitives every 256 DWORDs

9 years agolink: add SATALinkLayer skeleton (wip)
Florent Kermarrec [Tue, 4 Nov 2014 16:35:46 +0000 (17:35 +0100)]
link: add SATALinkLayer skeleton (wip)

9 years agolink: improve crc_tb/ preamble_tb and increase length
Florent Kermarrec [Tue, 4 Nov 2014 16:06:03 +0000 (17:06 +0100)]
link: improve crc_tb/ preamble_tb and increase length

9 years agolink: add Scrambler and testbench
Florent Kermarrec [Tue, 4 Nov 2014 10:40:43 +0000 (11:40 +0100)]
link: add Scrambler and testbench

9 years agolink: add CRC and testbench
Florent Kermarrec [Mon, 3 Nov 2014 17:54:41 +0000 (18:54 +0100)]
link: add CRC and testbench

9 years agosata/link: add crc and scrambler C models from SATA specification
Florent Kermarrec [Mon, 3 Nov 2014 17:11:14 +0000 (18:11 +0100)]
sata/link: add crc and scrambler C models from SATA specification

9 years agomove code and create a directory for each layer
Florent Kermarrec [Mon, 3 Nov 2014 16:38:12 +0000 (17:38 +0100)]
move code and create a directory for each layer

9 years agoremove DRP ports (won't be used for now)
Florent Kermarrec [Tue, 28 Oct 2014 10:30:15 +0000 (11:30 +0100)]
remove DRP ports (won't be used for now)

9 years agovarious fixes and simplifications, SATA1 & SATA2 OK
Florent Kermarrec [Fri, 24 Oct 2014 17:24:05 +0000 (19:24 +0200)]
various fixes and simplifications, SATA1 & SATA2 OK

9 years agoplatforms: merge but keep support for iMPACT for now (xc3sprog need to be tested...
Florent Kermarrec [Fri, 24 Oct 2014 10:29:29 +0000 (12:29 +0200)]
platforms: merge but keep support for iMPACT for now (xc3sprog need to be tested on Windows)

9 years agoctrl: drive txcomwake and not gtx.txcomwake in K7SATAPHYDeviceCtrl
Florent Kermarrec [Thu, 16 Oct 2014 08:38:26 +0000 (10:38 +0200)]
ctrl: drive txcomwake and not gtx.txcomwake in K7SATAPHYDeviceCtrl

9 years agorevert simulation design and add wave
Florent Kermarrec [Tue, 30 Sep 2014 09:04:36 +0000 (11:04 +0200)]
revert simulation design and add wave

9 years agoadd .payload. to Sink and Source to be compatible with upstream Migen
Florent Kermarrec [Tue, 30 Sep 2014 09:03:36 +0000 (11:03 +0200)]
add .payload. to Sink and Source to be compatible with upstream Migen

9 years agoinstanciate GTXE2_COMMON (seems recommended in AR43339)
Florent Kermarrec [Tue, 30 Sep 2014 08:55:21 +0000 (10:55 +0200)]
instanciate GTXE2_COMMON (seems recommended in AR43339)

9 years agotest to visualize OOB with Miscope
Florent Kermarrec [Tue, 30 Sep 2014 07:29:15 +0000 (09:29 +0200)]
test to visualize OOB with Miscope

9 years agouse SGMII clk (125MHz) and SFP for test on KC705
Florent Kermarrec [Tue, 30 Sep 2014 07:07:15 +0000 (09:07 +0200)]
use SGMII clk (125MHz) and SFP for test on KC705

9 years agosimplify and clean up
Florent Kermarrec [Mon, 29 Sep 2014 16:25:24 +0000 (18:25 +0200)]
simplify and clean up

9 years agosim working
Florent Kermarrec [Mon, 29 Sep 2014 15:12:02 +0000 (17:12 +0200)]
sim working

9 years agofix alignment (still some transmissions errors --> need to check clocks and resets)
Florent Kermarrec [Mon, 29 Sep 2014 11:02:11 +0000 (13:02 +0200)]
fix alignment (still some transmissions errors --> need to check clocks and resets)

9 years agofix and simplify ctrl fsms, OOB OK, align KO
Florent Kermarrec [Sat, 27 Sep 2014 15:26:52 +0000 (17:26 +0200)]
fix and simplify ctrl fsms, OOB OK, align KO

9 years agogtx: add resynchronization on control signals
Florent Kermarrec [Sat, 27 Sep 2014 15:25:49 +0000 (17:25 +0200)]
gtx: add resynchronization on control signals

9 years agommcm: configure default divider with default_speed
Florent Kermarrec [Sat, 27 Sep 2014 14:22:40 +0000 (16:22 +0200)]
mmcm: configure default divider with default_speed

9 years agoadd tx_reset_fsm and rx_reset_fsm
Florent Kermarrec [Sat, 27 Sep 2014 14:10:39 +0000 (16:10 +0200)]
add tx_reset_fsm and rx_reset_fsm

9 years agoreorganize code
Florent Kermarrec [Sat, 27 Sep 2014 13:34:28 +0000 (15:34 +0200)]
reorganize code
- use sys_clk of 166.66MHz and using it instead of sata clk.
- rename clocking to CRG since it also handles resets.
- create datapath and move code from gtx.

9 years agoclocking: clean up and add comments
Florent Kermarrec [Sat, 27 Sep 2014 11:33:43 +0000 (13:33 +0200)]
clocking: clean up and add comments

9 years agohost and device communicate with OOB, now need to fix ctrl
Florent Kermarrec [Fri, 26 Sep 2014 21:27:25 +0000 (23:27 +0200)]
host and device communicate with OOB, now need to fix ctrl

9 years agoreset and lock of PLL OK. We see OOB signals on the link but they are not decoded...
Florent Kermarrec [Fri, 26 Sep 2014 19:52:32 +0000 (21:52 +0200)]
reset and lock of PLL OK. We see OOB signals on the link but they are not decoded by the device.

9 years agoadd modelsim simulation and start fixing init
Florent Kermarrec [Fri, 26 Sep 2014 09:36:28 +0000 (11:36 +0200)]
add modelsim simulation and start fixing init

9 years agomodify TestDesign to be able to simulate phy with host <--> device loopback
Florent Kermarrec [Thu, 25 Sep 2014 13:37:49 +0000 (15:37 +0200)]
modify TestDesign to be able to simulate phy with host <--> device loopback

9 years agomove some logic outside of GTX
Florent Kermarrec [Thu, 25 Sep 2014 12:52:16 +0000 (14:52 +0200)]
move some logic outside of GTX

9 years agoclean up (thanks to Sebastien)
Florent Kermarrec [Thu, 25 Sep 2014 12:14:11 +0000 (14:14 +0200)]
clean up (thanks to Sebastien)

9 years agointegrate phy in test design and start fix syntax errors
Florent Kermarrec [Wed, 24 Sep 2014 12:28:52 +0000 (14:28 +0200)]
integrate phy in test design and start fix syntax errors

9 years agoinstanciate device or host controller
Florent Kermarrec [Wed, 24 Sep 2014 11:56:32 +0000 (13:56 +0200)]
instanciate device or host controller

9 years agomanage clock domain crossing and data width conversion in gtx
Florent Kermarrec [Wed, 24 Sep 2014 11:56:12 +0000 (13:56 +0200)]
manage clock domain crossing and data width conversion in gtx

9 years agocreate sata clock (sata_tx/2 for a 32 bits data path)
Florent Kermarrec [Wed, 24 Sep 2014 11:55:06 +0000 (13:55 +0200)]
create sata clock (sata_tx/2 for a 32 bits data path)

9 years agorealign rxdata / rxcharisk directly in gtx
Florent Kermarrec [Wed, 24 Sep 2014 10:13:43 +0000 (12:13 +0200)]
realign rxdata / rxcharisk directly in gtx

9 years agoadd device ctrl skeleton (we will use it for simulation with the host)
Florent Kermarrec [Wed, 24 Sep 2014 09:37:28 +0000 (11:37 +0200)]
add device ctrl skeleton (we will use it for simulation with the host)

9 years agomore ctrl skeleton
Florent Kermarrec [Wed, 24 Sep 2014 09:07:36 +0000 (11:07 +0200)]
more ctrl skeleton

9 years agoadd ctrl skeleton
Florent Kermarrec [Tue, 23 Sep 2014 22:01:01 +0000 (00:01 +0200)]
add ctrl skeleton

9 years agorearrange code and remove datapath for now
Florent Kermarrec [Tue, 23 Sep 2014 21:03:32 +0000 (23:03 +0200)]
rearrange code and remove datapath for now

9 years agoclean up and add K7SATAGTXReconfig skeleton (empty but we don't need it for now)
Florent Kermarrec [Tue, 23 Sep 2014 20:40:01 +0000 (22:40 +0200)]
clean up and add K7SATAGTXReconfig skeleton (empty but we don't need it for now)

9 years agoremove GTXE2_COMMON (we use in fact CPLL and not QPLL, GTXE2_COMMON was here in desig...
Florent Kermarrec [Tue, 23 Sep 2014 20:17:08 +0000 (22:17 +0200)]
remove GTXE2_COMMON (we use in fact CPLL and not QPLL, GTXE2_COMMON was here in design just because of an old ISE bug)

(see http://www.xilinx.com/support/answers/45410.html for more information)

9 years agoadd data path from another design (need to be adapted to SATA specification)
Florent Kermarrec [Tue, 23 Sep 2014 15:36:11 +0000 (17:36 +0200)]
add data path from another design (need to be adapted to SATA specification)

9 years agoadd SATAGTX with RX/TX clocking and reset (no DRP for now)
Florent Kermarrec [Tue, 23 Sep 2014 13:58:34 +0000 (15:58 +0200)]
add SATAGTX with RX/TX clocking and reset (no DRP for now)

9 years agoadd dict for fbdiv computation on GTXE2_COMMON
Florent Kermarrec [Tue, 23 Sep 2014 12:11:14 +0000 (14:11 +0200)]
add dict for fbdiv computation on GTXE2_COMMON

9 years agocreate k7satagtx.py and move GTXE2 primitive inside
Florent Kermarrec [Tue, 23 Sep 2014 12:03:51 +0000 (14:03 +0200)]
create k7satagtx.py and move GTXE2 primitive inside

9 years agocreate GTXE2_CHANNEL & GTXE2_COMMON class / add IO signals and parameters
Florent Kermarrec [Tue, 23 Sep 2014 11:57:02 +0000 (13:57 +0200)]
create GTXE2_CHANNEL & GTXE2_COMMON class / add IO signals and parameters

9 years agofill GTXE2_COMMON constants parameters and signals for SATA / disconnect unused outpu...
Florent Kermarrec [Tue, 23 Sep 2014 10:01:57 +0000 (12:01 +0200)]
fill GTXE2_COMMON constants parameters and signals for SATA / disconnect unused output ports

9 years agofill GTXE2_CHANNEL constants parameters and signals for SATA / disconnect unused...
Florent Kermarrec [Tue, 23 Sep 2014 09:54:36 +0000 (11:54 +0200)]
fill GTXE2_CHANNEL constants parameters and signals for SATA / disconnect unused output ports

9 years agok7sataphy: add GTXE2_COMMON instance skeleton
Florent Kermarrec [Tue, 23 Sep 2014 08:21:10 +0000 (10:21 +0200)]
k7sataphy: add GTXE2_COMMON instance skeleton

9 years agok7sataphy: add GTXE2_CHANNEL instance skeleton
Florent Kermarrec [Mon, 22 Sep 2014 13:55:21 +0000 (15:55 +0200)]
k7sataphy: add GTXE2_CHANNEL instance skeleton

9 years agoinit with repo with simple TestDesign
Florent Kermarrec [Mon, 22 Sep 2014 10:33:23 +0000 (12:33 +0200)]
init with repo with simple TestDesign