1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 <2012> 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 <2012> 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | CSR/CR questions |
From: | "Bai Jiaoni" <[email protected]> |
To: | [email protected] |
Date: | Mon, 29 Oct 2012 15:55:00 +0800 (CST) |
Dear Professor,
I want to use Geogrephic addressing to set the base address. I have some questions about CR/CSR address space. If I have the hardware in the 6 VME slot. I konw the CSR/CR space of this slot is 6<<19. CSR/CR includes two parts: CR and CSR. CR addressing space is from 0x0000 to 0x00FFF, which is about configuration information. The CSR space is from 0x7FC00 to 0x7FFFF. The table 10-13 of attachment is the CSR space. and the table 10-8 is one of the ADER.
1 Why one CSR/CR has 8 ADER instead of only one?
2 How does each ADER decoder? If the solt is 6, how to set the base address?
The below information is our hardware base address setting information:
void addr()
{
printf(">>VME:: Basic Global Address Configure.\n");
quickctrl_addr=0xfc0270;/* quick control address */
quickctrl_toff=0x18; /*sign of turning off quick control*/
csr1_haddr=0x700!
43; /*cblt csr1 high 8 bits offset address*/
ader3_addr=0x7ffdc; /*address decoder compre registers address*/
CLKader3_haddr=0x7ffdf+0x3;
CLKader2_haddr=0x7ffdb+0x3;
CLKader1_haddr=0x7ffd7+0x3;
CLKader0_haddr=0x7ffd3+0x3;
HPset_regaddr=0x10400; /*HPTDC setup reg*/
ader2_haddr=0x7ffd8+0x3;/*address decoder compre register2 high 8 bits address */
ader3_haddr=0x7ffdc+0x3;/*address decoder compre register3 high 8 bits address */
/*HighThresh,LowThresh,Constvoltage,SelfTestSignAmp,QTLowThresh,QTHighThresh;*/
LTReg_addr=0x40000,HTReg_addr=0x40004,QTCurr_addr=0x40008,SLEFTest_addr=0x4000c,QTHTrig_addr=0x40010,QTLTrig_addr=0x40014;
EventReg_addr=0xc;
Quickctrl_offaddr=0x7ffb;
/*L1_num;*/
LUT_addr=0x30000;
printf("VME:: Constant Address Set.\n");
}
WriteToV! me8((nGeo<<19)+ader2_haddr, VCSR, nGeo<<4));
WriteToVme8((nGeo<<19)+ader3_haddr, VCSR, nGeo>>4));
--
NO.19 of Yuquan Road, Shijingshan District, Beijing, China
Attachment:
CSR.png
Description: PNG image