6 Replies Latest reply: Sep 28, 2010 6:40 PM by 807576 RSS

    How to rebuild the os_boot.ace file by using the genace.tcl from Xilinx?

    807576
      Hi, dear all:

      Due to the need of our training course, I would like to rebuild the OpenSPARCT1_1_7_os_boot.ace file

      by using the bitstream file from existing EDK project and our modified ramdisk image.

      But I do not exactly know what the correct command would be.

      Here's an example:

      xmd -tcl ./genace.tcl -jprog -hw ./implementation/system.bit -data os/OpenSolaris/proto/ramdisk.snv-b77-nd.gz 0x????????
      -board ml505 -target mdm -ace my_ace.ace

      I don't know which file I should use (Maybe it also needs the ccx-firmware and OBP-Prom files.) and how to assign its starting address.

      Does anyone has any suggestion on how to do this?

      Best regards,
        • 1. Re: How to rebuild the os_boot.ace file by using the genace.tcl from Xilinx?
          807576
          After many searches, we finally found the genace_1c4t.txt file under $DV_ROOT/design/sys/edk/scripts directory from OpenSPARCT1 1.7 Processor Download.

          The correct command is:

          xmd -tcl genace.tcl -jprog -target mdm -board ml505 -hw implementation/system.bit -elf ccx-firmware/executable.elf -data os/proms/1c4t_obp_prom.bin 0x8ff00000 -data os/OpenSolaris/proto/ramdisk.snv-b77-nd.gz 0x8af00000 -ace os_boot.ace

          We've also ran a boot test and it works fine.

          Hopefully this will help other people experiencing the same problem.

          Sincerely,
          • 2. Re: How to rebuild the os_boot.ace file by using the genace.tcl from Xilinx?
            807576
            Thank you so very much!!

            At first I got following error:
            Error: Executable executable.elf does not contain start address..
            I added -start_address 0x8ff00000

            My script looks like this now:
            xmd -tcl genace.tcl -jprog -target mdm -board ml505 -hw system.bit -elf executable.elf -start_address 0x8ff00000 -data 1c4t_obp_prom.bin 0x8ff00000 -data ramdisk.snv-b77-nd.gz 0x8af00000 -ace os_boot.ace
            OpenSolaris is booting - everything seems to work.

            Cheers

            Edited by: DjHousecat on Feb 9, 2010 3:04 AM
            • 3. Re: How to rebuild the os_boot.ace file by using the genace.tcl from Xilinx?
              807576
              I just realized that there was a copy-paste-failure in my command-line. Of course it has to be download.bit instead of system.bit

              So my correct command line looks like this:
              xmd -tcl genace.tcl -jprog -target mdm -board ml505 -hw download.bit -elf executable.elf -start_address 0x8ff00000 -data 1c4t_obp_prom.bin 0x8ff00000 -data ramdisk.snv-b77-nd.gz 0x8af00000 -ace solaris.ace
              Just fyi: I am working under linux and got following error while executing the comman-line in bash:
              couldn't execute "impact": no such file or directory
              Solution:
              You have to export xilinx paths and load setting-skripts first.
              My complete make_ace skript looks like this:
              XILINX_DIR=/opt/Xilinx/10.1/ISE
              EDK_DIR=/opt/Xilinx/10.1/EDK
              export PATH=$PATH:${XILINX_DIR}/bin/lin64
              export PATH=$PATH:${EDK_DIR}/bin/lin64
              export PATH=$PATH:${EDK_DIR}/gnu/powerpc-eabi/lin64/bin
              
              # load settings
              . ${XILINX_DIR}/settings64.sh
              
              . ${EDK_DIR}/settings64.sh
              
              xmd -tcl genace.tcl -jprog -target mdm -board ml505 -hw download.bit -elf executable.elf -start_address 0x8ff00000 -data 1c4t_obp_prom.bin 0x8ff00000 -data ramdisk.snv-b77-nd.gz 0x8af00000 -ace solaris.ace
              Problem: How to build Ubuntu boot.ace ?

              I tried to replace the OpenSolaris ramdisk image (ramdisk.snv-b77-nd.gz) with the Ubuntu ramdisk image (ramdisk.ubuntu-7.10-gutsy.gz) .

              When I start the ubuntu.ace on my Virtex-5, nothing happens - no USART message, no bootloader.
              At first you can see the blinking SysACE STAT-LED. When it stops blinking, normally the bootloader shows up.

              Do I have to change some memory addresses?
              I think, even when the ramdisk file is corrupted, the bootloader should start up...
              • 4. Re: How to rebuild the os_boot.ace file by using the genace.tcl from Xilinx?
                807576
                Hi, DjHousecat :

                Here are the steps i've tried:

                1."gzip" the original ramdisk image to ramdisk.ubuntu-7.10-gutsy.gz in the DV_ROOT/desegn/sys/edk/os/Ubuntu/7.10-Gutsy/proto directory.

                2.Generate the ACE file with following command:
                xmd -tcl genace.tcl -jprog -target mdm -board ml505 -hw implementation/system.bit -elf ccx-firmware/executable.elf -data os/proms/1c4t_obp_prom.bin 0x8ff00000 -data os/Ubuntu/7.10-Gutsy/proto/ramdisk.ubuntu-7.10-gutsy.gz 0x8af00000 -ace ubuntu.ace
                After booting, it works well on the FPGA with Ubuntu ramdisk image.

                ( The snapshot file: http://homepage8.seed.net.tw/web@1/menspower/ub_on_opensparc.jpg )

                Regards,

                Shawn.
                • 5. Re: How to rebuild the os_boot.ace file by using the genace.tcl from Xilinx?
                  807576
                  That is exactly what I have done. I don't get it.

                  I just downloaded it with xmd:
                         % dow ccx-firmware/executable.elf
                         % dow -data os/proms/1c4t_obp_prom.bin 0x8ff00000
                         % dow -data os/Ubuntu/7.10-Gutsy/proto/ramdisk.ubuntu-7.10-gutsy.gz 0x8af00000
                         % run
                  This works fine: Screenshot

                  I will try it again tomorrow.

                  Thank you very much!
                  • 6. Re: How to rebuild the os_boot.ace file by using the genace.tcl from Xilinx?
                    807576
                    I am not able to fine the .elf files for the solaris operation system in the ccx-firmware folder. I am trying to change the sparc architectures and resynthesizing the cores and trying to run open Solaris on them. how to i generate the .elf on my own for the sparc T1 processor? where did you guys get the .elf from? kindly help