Bug 427

Summary: LDST cache-inhibit instructions needed (l*cix, st*cix)
Product: Libre-SOC's first SoC Reporter: Luke Kenneth Casson Leighton <lkcl>
Component: Source CodeAssignee: Luke Kenneth Casson Leighton <lkcl>
Status: CONFIRMED ---    
Severity: enhancement CC: libre-soc-bugs
Priority: ---    
Version: unspecified   
Hardware: PC   
OS: Linux   
NLnet milestone: NLNet.2019.10.043.Wishbone total budget (EUR) for completion of task and all subtasks: 200
budget (EUR) for this task, excluding subtasks' budget: 200 parent task for budget allocation: 383
child tasks for budget allocation: The table of payments (in EUR) for this task; TOML format:
lkcl = { amount = 200, submitted = 2021-04-24, paid = 2021-05-01 }
Bug Depends on:    
Bug Blocks: 383    

Description Luke Kenneth Casson Leighton 2020-07-12 12:38:49 BST
cache-inhibit variants of LDST instructions are needed.

* lbzcix RT,RA,RB
* lhzcix RT,RA,RB
* lwzcix RT,RA,RB
* ldcix RT,RA,RB
* stbcix RS,RA,RB
* sthcix RS,RA,RB
* stwcix RS,RA,RB
* stdcix RS,RA,RB

these to have a flag indicating cache-bypass     done not tested

pseudo-code to be added to wiki isa              DONE not tested

opcodes to be added to major_31.csv              DONE not tested

unit tests                                       not done

pass cache-bypass flag through to PortInterface  not done
Comment 1 Luke Kenneth Casson Leighton 2020-09-06 09:50:54 BST
commit e29393d63fea62ea2a2d7de9307fea2d36e36497
Author: Luke Kenneth Casson Leighton <lkcl@lkcl.net>
Date:   Sat Sep 5 16:38:40 2020 +0100

    add lwzcix unit test

commit 0d42b8c306f2caeaf7599cdb1a219929eb4e0b53
Author: Luke Kenneth Casson Leighton <lkcl@lkcl.net>
Date:   Sat Sep 5 17:10:26 2020 +0100

    use stbcix in test

wrong major_31 opcode for lbzcix in the CSV files