[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

Diskonchip Millennium?

Posted on 2003-12-03
32
Medium Priority
?
559 Views
Last Modified: 2013-12-09
Hi,      
        In the application note (AP044) from Msystems diskonchip it is given as:
"The DiskOnChip Millennium is mapped into an 8KB memory window in the host platform’s
memory map. This 8KB window consists of four 2KB windows." Why is this mapping done?
Is this done for all the DiskOnChip Millennium?  

The steps for BIOS is summarised as
1. After DiskOnChip Millennium BUSY# signal is negated, the CPU fetches the Reset Vector from
the Boot-Block area, fetches the Boot Code stored there, and starts to execute the code.
2. Boot Code runs the first part of BIOS, initializing the basic hardware functionality.
3. Boot Codes loads the rest of the BIOS from the flash memory to the DRAM, and transfer control
(jumps) there.
4. Chip Select of DiskOnChip Millennium is remapped from Reset Vector to BIOS expansion area.
5. CPU executes the rest of the BIOS code, including ROM expansion devices (among them, the
DiskOnChip Millennium itself).
6. CPU calls OS bootstrap loader (INT19).
7. OS is loaded, and recognizes the DiskOnChip Millennium as the boot device.
8. OS loads the application code from the DiskOnChip Millennium and executes it.
9. Application software uses DiskOnChip Millennium exactly as if it were using a regular hard disk.
In step 4 why is this remapping done?
0
Comment
Question by:Johncy
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 13
  • 12
  • 4
  • +1
32 Comments
 
LVL 13

Expert Comment

by:AlbertaBeef
ID: 9887475
Both the disk and the boot functions can be implemented using the DiskOnChip device.  At the stage you're referring to, the DiskOnChip is functioning BOTH as a disk AND as BIOS, and as such it reuqires a location in two different addresses.

It has to be remapped to two different addresses.
0
 
LVL 13

Expert Comment

by:AlbertaBeef
ID: 9887477
if you haven't read it yet, there's a good paper here: http://www.spezial.ru/products/producer/msystems/pdf/App_Note_047.pdf
0
 
LVL 13

Expert Comment

by:AlbertaBeef
ID: 9887478
oops, spelling error in second to last post (typing too fast)  "reuqires" should be "requires"

AlbertaBeef
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 11

Expert Comment

by:dimitry
ID: 9892887
Do you have specific problem with DiskOnChip Millennium ?
During the BIOS expansion search it loads INT 13h handler from DiskOnChip Millennium.
Then is behaves like for example SCSI disk. And BIOS calls INT 19h to boot OS from boot device.
0
 
LVL 13

Expert Comment

by:AlbertaBeef
ID: 9893230
johncy:  Is there more information you need, or, as dimitry asked, are you having a further problem we can assist you with?

TAny additional comments/input we can get from you can assist us in helping you better,

Thanks,

AlbertaBeef
EE Page Editor, Microchips/Desktops TA's
0
 

Author Comment

by:Johncy
ID: 9894090
Thanks.
      My disonchip is mapped in hardware to the address 0xFFFFFFFF-0xFF800000. My SDRAM to the address 0x00000000 - 0x01FFFFFF.
 "Chip select of diskonchip is remapped from reset vector to BIOS expansion area" - Is this mapping done in hardware? If so to which location should it be remapped to?
      I hope the BIOS expansion area starts from 0xC8000. Is this correct? I have a understanding as follows: During the BIOS expansion search it loads the TrueFFS after which the DOCM is emulated as a hard disk. After that with int 19h interrupt we can load the hard disk. Is it right?
0
 
LVL 11

Expert Comment

by:dimitry
ID: 9895018
What does it mean: 0xFFFFFFFF-0xFF800000 ?
You can not use this area. It doesn't make any sense in real mode.
In order to use INT 13h BIOS expansion DiskOnChip should be mapped in between
0x000C8000-0x000DFFFF.
0
 

Author Comment

by:Johncy
ID: 9901449
  I have sc1200(x86 compatible). I have my bios program, linux OS and filesystem in the same diskonchip milennium. The reset vector is FFFFFFF0. So the diskonchip is mapped to the higher physical order address where my ipl, spl, bios codes reside. When my BIOS program scans for BIOS expansion area, should this remapping (0x000C8000-0x000DFFFF) done in hardware?
0
 

Author Comment

by:Johncy
ID: 9901459
  I have sc1200(x86 compatible). I have my bios program, linux OS and filesystem in the same diskonchip milennium. The reset vector is FFFFFFF0. So the diskonchip is mapped to the higher physical order address where my ipl, spl, bios codes reside. When my BIOS program scans for BIOS expansion area, should this remapping (0x000C8000-0x000DFFFF) done in hardware?
0
 

Author Comment

by:Johncy
ID: 9901461
I have sc1200(x86 compatible). I have my bios program, linux OS and filesystem in the same diskonchip milennium. The reset vector is FFFFFFF0. So the diskonchip is mapped to the higher physical order address where my ipl, spl, bios codes reside. When my BIOS program scans for BIOS expansion area, should this remapping (0x000C8000-0x000DFFFF) done in hardware?
0
 
LVL 11

Expert Comment

by:dimitry
ID: 9901579
The simplest way is to connect DiskOnChip to additional Chip Select in H/W that will be mapped to D0000 (for example). I think that NSC board should have this kind of ability.
0
 

Author Comment

by:Johncy
ID: 9901837
I have sc1200(x86 compatible). I have my bios program, linux OS and filesystem in the same diskonchip milennium. The reset vector is FFFFFFF0. So the diskonchip is mapped to the higher physical order address where my ipl, spl, bios codes reside. When my BIOS program scans for BIOS expansion area, should this remapping (0x000C8000-0x000DFFFF) done in hardware?
0
 
LVL 11

Expert Comment

by:dimitry
ID: 9901903
Yes
0
 

Author Comment

by:Johncy
ID: 9902202
Thanks a lot for ur suggestion. In ur previous comment, "what does it mean 0xFFFFFFFF-0xFF800000. You cannot use this area. It doesn't make any sense in real mode." I cannot get this point. At power on, my DOCM is mapped to the physical address 0xFFFFFFFF-0xFF80000. Is this mapping ok?
0
 
LVL 11

Expert Comment

by:dimitry
ID: 9906559
For boot it is Ok, but then to load INT 13h driver you need to map it to for example 0x000D0000.
0
 

Author Comment

by:Johncy
ID: 9917516
The sdram is mapped to the lower address. Will there not be any conflict if diskonchip is remapped to the lower address?
0
 
LVL 11

Expert Comment

by:dimitry
ID: 9918722
Video Adaptor is also mapped to "low" memory: 0xA0000-0xC7FFF...
0
 

Author Comment

by:Johncy
ID: 9925309
I have some confusions here. Is the address 0xD0000 physical address or the address in DOCM? Whatever address we use in our assembly programming is the physical address or logical address. I was very much confused. Could u suggest me a source where could I clearly understand the x86 memory architecture and memory mapping?
0
 

Author Comment

by:Johncy
ID: 10004721
I have planned to have my diskonchip mapped to the lower address. Will there be any problem in having diskonchip mapped to the lower address?
0
 
LVL 11

Expert Comment

by:dimitry
ID: 10009241
What do you mean under "lower address" ? address < 0xa0000 ?
You can not do this. This is low RAM region.
0
 
LVL 11

Expert Comment

by:dimitry
ID: 10059732
Did you still have problems with DiskOnChip ?
0
 

Author Comment

by:Johncy
ID: 10060244
By dorado schematic, the diskonchip millennium is mapped to the lower address. Thats why I am confused..
0
 
LVL 11

Expert Comment

by:dimitry
ID: 10063823
Can you please show your memory map ?
0
 

Author Comment

by:Johncy
ID: 10180891
Flash memory or diskonchip millennium whichever i use is mapped to the lower address.
0
 
LVL 11

Expert Comment

by:dimitry
ID: 10181223
Can you please tell the exact memory location ?
0
 

Author Comment

by:Johncy
ID: 10181597
AD0-AD12 connected to A0-A12 of diskonchip millennium(MD-2800-D08).
0
 
LVL 11

Expert Comment

by:dimitry
ID: 10206983
Address lines is not everything. Actually they are not defining mapping at all. Mapping is defined by H/W that sets CS to the device.
0
 
LVL 11

Expert Comment

by:dimitry
ID: 11226374
It was long conversation with links to documents. Maybe it is possible to leave it with points refunded ?
0
 

Accepted Solution

by:
modulo earned 0 total points
ID: 11248096
PAQed, with points refunded (150)

modulo
Community Support Moderator
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

As you can read I recycle all my old hardware and the time has come that my power supply of 200 Watt cannot provide enough power for my backup server. I have lots of Compaq power supply's laying around, so I figured to use one of these PSU's. I t…
System overheating may become a serious problem if not taken care of at the proper time. I am writing this article because I faced a similar problem. Intro All electronic devices produce heat, but computers are a special case - the processors bo…
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…
In response to a need for security and privacy, and to continue fostering an environment members can turn to for support, solutions, and education, Experts Exchange has created anonymous question capabilities. This new feature is available to our Pr…

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question