litex.git
9 years agoreplace SATAX with sata_genx
Florent Kermarrec [Thu, 22 Jan 2015 16:15:12 +0000 (17:15 +0100)]
replace SATAX with sata_genx

9 years agotargets/core: simplify ios generation
Florent Kermarrec [Thu, 22 Jan 2015 15:52:26 +0000 (16:52 +0100)]
targets/core: simplify ios generation

9 years agochange submodules/specials/clock_domains syntax
Florent Kermarrec [Thu, 22 Jan 2015 15:02:41 +0000 (16:02 +0100)]
change submodules/specials/clock_domains syntax

9 years agofrontend: simplify
Florent Kermarrec [Thu, 22 Jan 2015 09:45:11 +0000 (10:45 +0100)]
frontend: simplify

9 years agodoc: fix typos
Florent Kermarrec [Thu, 22 Jan 2015 08:55:06 +0000 (09:55 +0100)]
doc: fix typos

9 years agobist: add random addressing
Florent Kermarrec [Thu, 22 Jan 2015 00:50:21 +0000 (01:50 +0100)]
bist: add random addressing

9 years agobist: add loops parameter for more precision in speed computation
Florent Kermarrec [Thu, 22 Jan 2015 00:33:02 +0000 (01:33 +0100)]
bist: add loops parameter for more precision in speed computation

9 years agocommand: remove success/failed redundancy (keep failed)
Florent Kermarrec [Wed, 21 Jan 2015 23:23:11 +0000 (00:23 +0100)]
command: remove success/failed redundancy (keep failed)

9 years agoadd PacketBuffer, simplify architecture and reduce ressource usage
Florent Kermarrec [Wed, 21 Jan 2015 22:11:38 +0000 (23:11 +0100)]
add PacketBuffer, simplify architecture and reduce ressource usage

9 years agotransport: simplify tx and reduce ressource usage
Florent Kermarrec [Wed, 21 Jan 2015 18:11:54 +0000 (19:11 +0100)]
transport: simplify tx and reduce ressource usage

9 years agotransport: simplify and reduce ressource usage
Florent Kermarrec [Wed, 21 Jan 2015 17:41:14 +0000 (18:41 +0100)]
transport: simplify and reduce ressource usage

9 years agocommon: clean up
Florent Kermarrec [Wed, 21 Jan 2015 11:01:28 +0000 (12:01 +0100)]
common: clean up

9 years agolink/crc: use OrderedDict to generate the same code on each iteration
Florent Kermarrec [Wed, 21 Jan 2015 10:47:20 +0000 (11:47 +0100)]
link/crc: use OrderedDict to generate the same code on each iteration

9 years agodoc: fix .PNG extension
Florent Kermarrec [Wed, 21 Jan 2015 10:11:01 +0000 (11:11 +0100)]
doc: fix .PNG extension

9 years agocommand: merge 2 states on tx
Florent Kermarrec [Wed, 21 Jan 2015 09:52:56 +0000 (10:52 +0100)]
command: merge 2 states on tx

9 years agofix core generation
Florent Kermarrec [Wed, 21 Jan 2015 09:52:18 +0000 (10:52 +0100)]
fix core generation

9 years agodoc: add SATA description from Erik Landström's Thesis
Florent Kermarrec [Tue, 20 Jan 2015 23:09:24 +0000 (00:09 +0100)]
doc: add SATA description from Erik Landström's Thesis

9 years agochange copyright to HKU
Florent Kermarrec [Tue, 20 Jan 2015 22:41:33 +0000 (23:41 +0100)]
change copyright to HKU

9 years agomanage reg_d2h errors
Florent Kermarrec [Tue, 20 Jan 2015 16:14:01 +0000 (17:14 +0100)]
manage reg_d2h errors

9 years agobist: show current length in MB
Florent Kermarrec [Tue, 20 Jan 2015 14:24:52 +0000 (15:24 +0100)]
bist: show current length in MB

9 years agobist: add decoding of capabilities
Florent Kermarrec [Tue, 20 Jan 2015 12:17:59 +0000 (13:17 +0100)]
bist: add decoding of capabilities

9 years agobist: decode more infos from identify data
Florent Kermarrec [Tue, 20 Jan 2015 11:12:51 +0000 (12:12 +0100)]
bist: decode more infos from identify data

9 years agofix license
Florent Kermarrec [Tue, 20 Jan 2015 09:47:14 +0000 (10:47 +0100)]
fix license

9 years agocopy README chapters to .rst
Florent Kermarrec [Mon, 19 Jan 2015 22:28:14 +0000 (23:28 +0100)]
copy README chapters to .rst

9 years agoadd verilog backend to use the core with a "standard" flow
Florent Kermarrec [Mon, 19 Jan 2015 17:40:32 +0000 (18:40 +0100)]
add verilog backend to use the core with a "standard" flow

9 years agoclean up
Florent Kermarrec [Mon, 19 Jan 2015 16:52:05 +0000 (17:52 +0100)]
clean up

9 years agoadd doc skeleton (from emscripten with readthedocs theme)
Florent Kermarrec [Mon, 19 Jan 2015 13:17:43 +0000 (14:17 +0100)]
add doc skeleton (from emscripten with readthedocs theme)

9 years agoreplace Makefile with make.py (will enable verilog rtl generation for integration...
Florent Kermarrec [Sat, 17 Jan 2015 13:17:31 +0000 (14:17 +0100)]
replace Makefile with make.py (will enable verilog rtl generation for integration with standard flows)

9 years agorefactor code
Florent Kermarrec [Fri, 16 Jan 2015 22:52:41 +0000 (23:52 +0100)]
refactor code

9 years agoadd support of identify device command
Florent Kermarrec [Fri, 16 Jan 2015 21:49:34 +0000 (22:49 +0100)]
add support of identify device command

9 years agoadd test_link.py (replace test_bist_mila)
Florent Kermarrec [Fri, 16 Jan 2015 20:01:06 +0000 (21:01 +0100)]
add test_link.py (replace test_bist_mila)

9 years agouse csr_data_width of 32 to speed up data mila upload
Florent Kermarrec [Fri, 16 Jan 2015 19:53:17 +0000 (20:53 +0100)]
use csr_data_width of 32 to speed up data mila upload

9 years agoglobal clean up
Florent Kermarrec [Fri, 16 Jan 2015 19:25:11 +0000 (20:25 +0100)]
global clean up
- remove initial sims
- remove SATAPHYDeviceCtrl
- rename to LiteSATA
- rename test to bist

9 years agophy: remove GTXE2_COMMON (no longer need since it was a Vivado bug that is now fixed)
Florent Kermarrec [Fri, 16 Jan 2015 18:25:35 +0000 (19:25 +0100)]
phy: remove GTXE2_COMMON (no longer need since it was a Vivado bug that is now fixed)

9 years agobist: use hardware counter for speed calc and remove loops mode
Florent Kermarrec [Fri, 16 Jan 2015 17:14:13 +0000 (18:14 +0100)]
bist: use hardware counter for speed calc and remove loops mode

9 years agolink/cont: improve timing
Florent Kermarrec [Fri, 16 Jan 2015 17:13:07 +0000 (18:13 +0100)]
link/cont: improve timing

9 years agoadd need_reset from controller to request system reset when SATA is not locked
Florent Kermarrec [Wed, 14 Jan 2015 17:18:42 +0000 (18:18 +0100)]
add need_reset from controller to request system reset when SATA is not locked

9 years agoadd frontend and improve BIST
Florent Kermarrec [Wed, 14 Jan 2015 08:19:41 +0000 (09:19 +0100)]
add frontend and improve BIST

9 years agouse new submodules/specials/clock_domains automatic collection
Florent Kermarrec [Mon, 12 Jan 2015 11:44:18 +0000 (12:44 +0100)]
use new submodules/specials/clock_domains automatic collection

9 years agoimprove timings with BufferizeEndpoints
Florent Kermarrec [Thu, 8 Jan 2015 21:59:31 +0000 (22:59 +0100)]
improve timings with BufferizeEndpoints

9 years agouse 166MHz clock
Florent Kermarrec [Thu, 8 Jan 2015 21:58:26 +0000 (22:58 +0100)]
use 166MHz clock

9 years agosimplify bist
Florent Kermarrec [Wed, 7 Jan 2015 21:15:57 +0000 (22:15 +0100)]
simplify bist

9 years agocommand: add robustness and simplify RX path
Florent Kermarrec [Tue, 6 Jan 2015 17:17:11 +0000 (18:17 +0100)]
command: add robustness and simplify RX path

9 years agocommand: replace SyncFIFO with Buffer for cmd_buffer
Florent Kermarrec [Tue, 6 Jan 2015 16:03:27 +0000 (17:03 +0100)]
command: replace SyncFIFO with Buffer for cmd_buffer

9 years agocommand: add support for larger DMAs
Florent Kermarrec [Tue, 6 Jan 2015 15:48:19 +0000 (16:48 +0100)]
command: add support for larger DMAs

9 years agolink: check CRC on RX path
Florent Kermarrec [Thu, 25 Dec 2014 12:11:22 +0000 (13:11 +0100)]
link: check CRC on RX path

9 years agotest: fix link_tb and bist_tb
Florent Kermarrec [Thu, 25 Dec 2014 11:28:06 +0000 (12:28 +0100)]
test: fix link_tb and bist_tb

9 years agoadd option to implement or not mila (to see real ressource usage of the SATA controller)
Florent Kermarrec [Wed, 24 Dec 2014 14:57:42 +0000 (15:57 +0100)]
add option to implement or not mila (to see real ressource usage of the SATA controller)

9 years agocommand: remove returns to IDLE state (will be better to add a timeout for a transfer...
Florent Kermarrec [Wed, 24 Dec 2014 14:08:06 +0000 (15:08 +0100)]
command: remove returns to IDLE state (will be better to add a timeout for a transfer and reset the fsm).

9 years agoclean up TestDesign
Florent Kermarrec [Wed, 24 Dec 2014 14:05:17 +0000 (15:05 +0100)]
clean up TestDesign

9 years agouse max_count of 16 and clean up
Florent Kermarrec [Tue, 23 Dec 2014 22:19:48 +0000 (23:19 +0100)]
use max_count of 16 and clean up

9 years agoadd test_bist_mila to show how to capture data
Florent Kermarrec [Tue, 23 Dec 2014 19:56:03 +0000 (20:56 +0100)]
add test_bist_mila to show how to capture data

9 years agoadd test_bist with mila
Florent Kermarrec [Tue, 23 Dec 2014 19:41:35 +0000 (20:41 +0100)]
add test_bist with mila

9 years agoadd wr_only and rd_only mode to BIST (to test speed) and switch to 100MHz system...
Florent Kermarrec [Tue, 23 Dec 2014 18:44:39 +0000 (19:44 +0100)]
add wr_only and rd_only mode to BIST (to test speed) and switch to 100MHz system clock

9 years agoimprove BIST and clean up (remove support of identify command and debug code)
Florent Kermarrec [Tue, 23 Dec 2014 17:26:07 +0000 (18:26 +0100)]
improve BIST and clean up (remove support of identify command and debug code)

9 years agotest bist at high speed(working)
Florent Kermarrec [Tue, 23 Dec 2014 00:39:41 +0000 (01:39 +0100)]
test bist at high speed(working)

9 years agotest bist at slow speed (working)
Florent Kermarrec [Mon, 22 Dec 2014 23:41:39 +0000 (00:41 +0100)]
test bist at slow speed (working)

9 years agoread/write seems OK with CommandGenerator
Florent Kermarrec [Mon, 22 Dec 2014 23:08:22 +0000 (00:08 +0100)]
read/write seems OK with CommandGenerator

9 years agolink: fix rx path
Florent Kermarrec [Mon, 22 Dec 2014 19:58:38 +0000 (20:58 +0100)]
link: fix rx path

9 years agoadd test_read / test_write (HOST<-->HDD transfers OK for the 3 tests, rx data seems...
Florent Kermarrec [Sat, 20 Dec 2014 15:25:05 +0000 (16:25 +0100)]
add test_read / test_write (HOST<-->HDD transfers OK for the 3 tests, rx data seems to be stuck in link of command layer)

9 years agoadd mode generic CommandGenerator for debug
Florent Kermarrec [Sat, 20 Dec 2014 15:06:02 +0000 (16:06 +0100)]
add mode generic CommandGenerator for debug

9 years agoadd identify device to command_tb and revert endianness (seems conform with Lecroy...
Florent Kermarrec [Sat, 20 Dec 2014 12:26:07 +0000 (13:26 +0100)]
add identify device to command_tb and revert endianness (seems conform with Lecroy SATA Protocol suite samples)

it seems endianness is correct by is only printed in LSB first in Lecroy software

9 years agochange FIS endianness (seems to be little endian)
Florent Kermarrec [Sat, 20 Dec 2014 11:58:37 +0000 (12:58 +0100)]
change FIS endianness (seems to be little endian)

9 years agoadd primitives decoding in test_identify to ease debug
Florent Kermarrec [Sat, 20 Dec 2014 00:26:58 +0000 (01:26 +0100)]
add primitives decoding in test_identify to ease debug

9 years agofix ack in idle in some fsm (implementation behaviour different from simulation)
Florent Kermarrec [Sat, 20 Dec 2014 00:26:02 +0000 (01:26 +0100)]
fix ack in idle in some fsm (implementation behaviour different from simulation)

9 years agoadd fsms to mila for debug
Florent Kermarrec [Fri, 19 Dec 2014 22:10:51 +0000 (23:10 +0100)]
add fsms to mila for debug

9 years agouse new submodules collection to expose more fsm an modules
Florent Kermarrec [Fri, 19 Dec 2014 21:50:35 +0000 (22:50 +0100)]
use new submodules collection to expose more fsm an modules

9 years agolink: add parameter to disable CONT insertion (will ease debug)
Florent Kermarrec [Fri, 19 Dec 2014 21:32:11 +0000 (22:32 +0100)]
link: add parameter to disable CONT insertion (will ease debug)

9 years agofix phy datapath, first communications between SATACON and a HDD... :)
Florent Kermarrec [Fri, 19 Dec 2014 19:16:37 +0000 (20:16 +0100)]
fix phy datapath, first communications between SATACON and a HDD... :)

9 years agoprepare identify test with SATACON
Florent Kermarrec [Fri, 19 Dec 2014 18:02:31 +0000 (19:02 +0100)]
prepare identify test with SATACON

9 years agotest: change UART baudrate and test SATACONTRemover
Florent Kermarrec [Fri, 19 Dec 2014 16:45:02 +0000 (17:45 +0100)]
test: change UART baudrate and test SATACONTRemover

9 years agoSATAPHYDatapathRX: use Converter and simplify
Florent Kermarrec [Fri, 19 Dec 2014 16:27:44 +0000 (17:27 +0100)]
SATAPHYDatapathRX: use Converter and simplify

9 years agoSATAPHYDatapathTX: use Converter and simplify
Florent Kermarrec [Fri, 19 Dec 2014 16:13:03 +0000 (17:13 +0100)]
SATAPHYDatapathTX: use Converter and simplify

9 years agoadd phy_datapath_tb and start datapath simplification
Florent Kermarrec [Fri, 19 Dec 2014 15:48:22 +0000 (16:48 +0100)]
add phy_datapath_tb and start datapath simplification

9 years agoadd cont_tb and rewrite cont
Florent Kermarrec [Fri, 19 Dec 2014 10:15:01 +0000 (11:15 +0100)]
add cont_tb and rewrite cont

9 years agouse new implicit submodules collection and Pipeline
Florent Kermarrec [Fri, 19 Dec 2014 00:35:18 +0000 (01:35 +0100)]
use new implicit submodules collection and Pipeline

9 years agolink_tb: simplify using implicit submodules collect
Florent Kermarrec [Fri, 19 Dec 2014 00:23:04 +0000 (01:23 +0100)]
link_tb: simplify using implicit submodules collect

9 years agomake ctrl/datapath in phy vendor agnostics and simplify imports
Florent Kermarrec [Thu, 18 Dec 2014 17:02:35 +0000 (18:02 +0100)]
make ctrl/datapath in phy vendor agnostics and simplify imports

9 years agotest: clean up imports
Florent Kermarrec [Thu, 18 Dec 2014 15:45:12 +0000 (16:45 +0100)]
test: clean up imports

9 years agotest: create generic PacketStreamer/PacketLogger and use it in link_tb/command_tb
Florent Kermarrec [Thu, 18 Dec 2014 12:15:39 +0000 (13:15 +0100)]
test: create generic PacketStreamer/PacketLogger and use it in link_tb/command_tb

9 years agophy: use vivado parameters and fix RX datapath (LSB first)
Florent Kermarrec [Wed, 17 Dec 2014 19:57:37 +0000 (20:57 +0100)]
phy: use vivado parameters and fix RX datapath (LSB first)

9 years agoupdate clock constraints for SATA1 and use sys_clk of 200MHz
Florent Kermarrec [Wed, 17 Dec 2014 17:03:11 +0000 (18:03 +0100)]
update clock constraints for SATA1 and use sys_clk of 200MHz
- data seems stable (mila capture) except when receive the ALIGN primtive from the device, we should maybe disable alignment on the HOST when link is ready...

9 years agoadd very basic PHY stimulator (to see HDD behaviour when we send primitives)
Florent Kermarrec [Wed, 17 Dec 2014 11:50:02 +0000 (12:50 +0100)]
add very basic PHY stimulator (to see HDD behaviour when we send primitives)

9 years agouse Vivado programmer instead of IMPACT
Florent Kermarrec [Wed, 17 Dec 2014 11:07:11 +0000 (12:07 +0100)]
use Vivado programmer instead of IMPACT

9 years agofix compilation and use new cpu_csr_regions
Florent Kermarrec [Wed, 17 Dec 2014 11:03:52 +0000 (12:03 +0100)]
fix compilation and use new cpu_csr_regions

9 years agoimprove check function
Florent Kermarrec [Wed, 17 Dec 2014 07:58:02 +0000 (08:58 +0100)]
improve check function

9 years agolink_tb: fix cont regression
Florent Kermarrec [Mon, 15 Dec 2014 19:00:19 +0000 (20:00 +0100)]
link_tb: fix cont regression

9 years agobist: add count to bist parameters
Florent Kermarrec [Mon, 15 Dec 2014 18:48:22 +0000 (19:48 +0100)]
bist: add count to bist parameters

9 years agomove Counter to common and use it in all modules
Florent Kermarrec [Mon, 15 Dec 2014 18:33:38 +0000 (19:33 +0100)]
move Counter to common and use it in all modules

9 years agocreate SATACON and use it in bist_tb
Florent Kermarrec [Mon, 15 Dec 2014 18:13:32 +0000 (19:13 +0100)]
create SATACON and use it in bist_tb

9 years agobist: add ctrl_errors/data_errors and clean up
Florent Kermarrec [Mon, 15 Dec 2014 18:04:45 +0000 (19:04 +0100)]
bist: add ctrl_errors/data_errors and clean up

9 years agohdd: improve debug print
Florent Kermarrec [Mon, 15 Dec 2014 18:04:07 +0000 (19:04 +0100)]
hdd: improve debug print

9 years agoadd simple synthetizable BIST
Florent Kermarrec [Mon, 15 Dec 2014 15:44:12 +0000 (16:44 +0100)]
add simple synthetizable BIST

9 years agocommand: fix ValueError msg
Florent Kermarrec [Mon, 15 Dec 2014 14:34:00 +0000 (15:34 +0100)]
command: fix ValueError msg

9 years agocommand: memorize data on RX path before presenting it to the user
Florent Kermarrec [Mon, 15 Dec 2014 14:31:08 +0000 (15:31 +0100)]
command: memorize data on RX path before presenting it to the user

9 years agotransport: add _get_item and simplify _encode_cmd/_decode_cmd
Florent Kermarrec [Mon, 15 Dec 2014 12:38:50 +0000 (13:38 +0100)]
transport: add _get_item and simplify _encode_cmd/_decode_cmd

9 years agomodify addressing (in sectors) and improve hdd model debug
Florent Kermarrec [Mon, 15 Dec 2014 12:26:53 +0000 (13:26 +0100)]
modify addressing (in sectors) and improve hdd model debug

9 years agocommand: fix TX path with random acknowledge
Florent Kermarrec [Sun, 14 Dec 2014 20:03:14 +0000 (21:03 +0100)]
command: fix TX path with random acknowledge

9 years agocommand: address/length in bytes
Florent Kermarrec [Sun, 14 Dec 2014 19:30:21 +0000 (20:30 +0100)]
command: address/length in bytes

9 years agohdd: manage sector_size, limitation to 2048 dwords per dma
Florent Kermarrec [Sun, 14 Dec 2014 19:30:01 +0000 (20:30 +0100)]
hdd: manage sector_size, limitation to 2048 dwords per dma