Skip to content

Latest commit

 

History

History
169 lines (153 loc) · 12.1 KB

0195-2024-03-23.md

File metadata and controls

169 lines (153 loc) · 12.1 KB

23 Mar 2024

Previous journal: Next journal:
0194-2024-02-05.md 0196-2024-03-30.md

Coming back to life

It's been a very busy start to the year, so I've done very few journal updates (though I've still been busy).

General stuff

  • I got a job with Efabless! I start on April 8th. Lots of handover that I want/need to complete in my former role.
  • TT03p5 live demo went well. I've since ordered a board and an extra chip.
  • TT03 will hopefully arrive in the next few weeks.
  • I did a popular YouTube video on TT02, then a few days ago: one on my raybox-zero presentation that I'd given to people in the Zero to ASIC weekly meeting a while back (October 2023?)

I built a new MPW9 VM (anton_mpw9)

High-level

  • Specific details are in my more private notes under the "REBOOT" section.
  • Used Ubuntu Desktop 22.04. I made sure "3D acceleration" was turned on, plus EFI, before the first boot of the VM (as I had read this could make a difference to how Ubuntu sets itself up).
  • Also configured video memory to be 256MB, and I'm using 8GB of VM RAM for now, with 8 vCPUs.
  • Used Matt Venn's guide for manual installation of OpenLane and all the other standard ASIC digital tools. I took snapshots along the way. I also installed VSCode.
  • Set video scaling to 200% hoping it would mean a smaller (FHD vs UHD) framebuffer when run on 4K monitors.
  • Graphics controller is "VMSVGA" (VMware emulation, apparently; can check in the logs how this is going).
  • NOTE: Network is using NAT.

Tests and transfer

  • After getting the VM going it seemed that doing the standard "make user_proj_example" takes over 24 minutes, with 10mins of that just on the Magic DRC step. That seems excessive. I couldn't find a way to improve this.
  • This was originally on a L5, so I then transferred the VM to my L7.
  • I had VBox 7.0.10 but updated to 7.0.14. Need to remember to update Guest Additions.
  • Added a host shared folder: %USERPROFILE%\Documents didn't work so I needed it fully-qualified. Mapped as HOST_Documents.
  • I noticed "Enable Nested VT-x/AMD-V" from the L5 remained on (which I've not been able to use on my L7 for some reason) but after turning it off and saving the VM settings, it won't let me turn it back on now. Not sure it would've worked anyway (given prior findings).

Boot...

  • Booted OK, but I saw some console-level warnings or something, maybe about GFX, before the boot logo appeared.
  • Mouse cursor is not visible on Ubuntu desktop, but is visible on its LHS menu. Also, mouse clicks are not working. Actually, LEFT clicks are not working... RIGHT are?? Actually that may have been because I was too eager with hitting ESC and F1 during boot.
  • In the VBox status bar, I see an icon of a turtle with a "V" on its back where it represents CPUs. Hovering over it shows "Execution engine: native API" instead of "VT-x/AMD-V"
  • OK, it seems I need to look into this: https://forums.virtualbox.org/viewtopic.php?f=25&t=99390 -- I'll come back to that.
  • glxgears runs fine on my 2560x1440 display (over HDMI). Approx 70fps.
  • I have noticed however that VSCode (in my journal) IS slow... takes a while to interpret Markdown syntax highlighting, and shows latency to mouse/keyboard.
  • FWIW: Notepad on Windows (at least on my 4K monitor) even feels like it has latency!

TODO

  • Try measures to force out Hyper-V (and hence reactivate "VT-x/AMD-V"): https://forums.virtualbox.org/viewtopic.php?f=25&t=99390
  • Update VirtualBox Guest Additions
  • Check for other journal entries about VM performance. 0170 is one.
  • Check my new anton_mpw9 VM OpenLane performance against ztoa_mpw9 for both sky130 and gf180. Monitor GPU0/1 performance.

VBox log showing NEM and Hyper-V blocker leading to "snail mode"

00:00:10.633659 HM: HMR3Init: Attempting fall back to NEM: VT-x is not available
00:00:10.639355 ERROR [COM]: aRC=VBOX_E_IPRT_ERROR (0x80bb0005) aIID={6ac83d89-6ee7-4e33-8ae6-b257b2e81be8} aComponent={ConsoleWrap} aText={The VBoxGuestPropSvc service call failed with the error VERR_HGCM_SERVICE_NOT_FOUND}, preserve=false aResultDetail=-2900
00:00:10.645357 NEM:  info: Found optional import WinHvPlatform.dll!WHvQueryGpaRangeDirtyBitmap.
00:00:10.645364 NEM:  info: Found optional import vid.dll!VidGetHvPartitionId.
00:00:10.645367 NEM:  info: Found optional import vid.dll!VidGetPartitionProperty.
00:00:10.645407 NEM: WHvCapabilityCodeHypervisorPresent is TRUE, so this might work...
00:00:10.645410 NEM: WHvCapabilityCodeExtendedVmExits      = 0x0000000000007fff
00:00:10.645413 NEM:                       fExtendedMsrExit: 1
00:00:10.645417 NEM:                     fExtendedCpuIdExit: 1
00:00:10.645419 NEM:                      fExtendedXcptExit: 1
00:00:10.645423 NEM: Warning! Unknown VM exit definitions: 0x7fff
00:00:10.645426 NEM: Warning! Unknown feature definitions: 0x2ff
00:00:10.645429 NEM: Supported exception exit bitmap: 0xf7dfb
00:00:10.645434 NEM: WHvCapabilityCodeProcessorVendor      = 1 - Intel
00:00:10.645442 NEM: WHvCapabilityCodeProcessorFeatures    = 0x3e1b7bcfe7f7859f
00:00:10.645445 NEM:                            Sse3Support: 1
00:00:10.645448 NEM:                        LahfSahfSupport: 1
00:00:10.645451 NEM:                           Ssse3Support: 1
00:00:10.645453 NEM:                          Sse4_1Support: 1
00:00:10.645456 NEM:                          Sse4_2Support: 1
00:00:10.645459 NEM:                           Sse4aSupport: 0
00:00:10.645473 NEM:                             XopSupport: 0
00:00:10.645475 NEM:                          PopCntSupport: 1
00:00:10.645478 NEM:                      Cmpxchg16bSupport: 1
00:00:10.645481 NEM:                       Altmovcr8Support: 0
00:00:10.645483 NEM:                           LzcntSupport: 1
00:00:10.645486 NEM:                     MisAlignSseSupport: 0
00:00:10.645489 NEM:                          MmxExtSupport: 0
00:00:10.645491 NEM:                        Amd3DNowSupport: 0
00:00:10.645494 NEM:                ExtendedAmd3DNowSupport: 0
00:00:10.645497 NEM:                         Page1GbSupport: 1
00:00:10.645499 NEM:                             AesSupport: 1
00:00:10.645502 NEM:                       PclmulqdqSupport: 1
00:00:10.645505 NEM:                            PcidSupport: 1
00:00:10.645507 NEM:                            Fma4Support: 0
00:00:10.645510 NEM:                            F16CSupport: 1
00:00:10.645512 NEM:                          RdRandSupport: 1
00:00:10.645515 NEM:                        RdWrFsGsSupport: 1
00:00:10.645518 NEM:                            SmepSupport: 1
00:00:10.645520 NEM:              EnhancedFastStringSupport: 1
00:00:10.645523 NEM:                            Bmi1Support: 1
00:00:10.645526 NEM:                            Bmi2Support: 1
00:00:10.645528 NEM:                           MovbeSupport: 1
00:00:10.645531 NEM:                          Npiep1Support: 1
00:00:10.645534 NEM:                   DepX87FPUSaveSupport: 1
00:00:10.645536 NEM:                          RdSeedSupport: 1
00:00:10.645539 NEM:                             AdxSupport: 1
00:00:10.645542 NEM:                   IntelPrefetchSupport: 1
00:00:10.645544 NEM:                            SmapSupport: 1
00:00:10.645567 NEM:                             HleSupport: 0
00:00:10.645570 NEM:                             RtmSupport: 0
00:00:10.645573 NEM:                          RdtscpSupport: 1
00:00:10.645576 NEM:                      ClflushoptSupport: 1
00:00:10.645579 NEM:                            ClwbSupport: 1
00:00:10.645581 NEM:                             ShaSupport: 1
00:00:10.645584 NEM:                X87PointersSavedSupport: 0
00:00:10.645587 NEM: Warning! Unknown CPU features: 0x3e1b7bcfe7f7859f
00:00:10.645592 NEM: WHvCapabilityCodeProcessorClFlushSize = 2^8
00:00:10.645596 NEM: Warning! Unknown capability 0x4 returning: 3f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645599 NEM: Warning! Unknown capability 0x5 returning: 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645609 NEM: Warning! Unknown capability 0x6 returning: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645750 NEM: Warning! Unknown capability 0x1003 returning: 1f 38 58 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645756 NEM: Warning! Unknown capability 0x1004 returning: 97 13 32 90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645759 NEM: Warning! Unknown capability 0x1005 returning: 00 c2 eb 0b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645763 NEM: Warning! Unknown capability 0x1006 returning: 02 00 00 00 00 00 00 00 9f 85 f7 e7 cf 7b 1b 3e 43 77 17 00 00 00 00 00
00:00:10.645766 NEM: Warning! Unknown capability 0x1007 returning: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645772 NEM: Warning! Unknown capability 0x1008 returning: 01 00 00 00 00 00 00 00 ff 8f 44 7f 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.645777 NEM: Warning! Unknown capability 0x1009 returning: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:00:10.646087 NEM: Created partition 000001e43b5d9870.
00:00:10.646093 NEM: Adjusting APIC configuration from X2APIC to APIC max mode.  X2APIC is not supported by the WinHvPlatform API!
00:00:10.646095 NEM: Disable Hyper-V if you need X2APIC for your guests!
00:00:10.646238 NEM:
00:00:10.646238 NEM: NEMR3Init: Snail execution mode is active!
00:00:10.646238 NEM: Note! VirtualBox is not able to run at its full potential in this execution mode.
00:00:10.646238 NEM:       To see VirtualBox run at max speed you need to disable all Windows features
00:00:10.646239 NEM:       making use of Hyper-V.  That is a moving target, so google how and carefully
00:00:10.646239 NEM:       consider the consequences of disabling these features.
00:00:10.646239 NEM:
00:00:10.646251 CPUM: No hardware-virtualization capability detected
00:00:10.646254 CPUM: fXStateHostMask=0x7; initial: 0x7; host XCR0=0x7
00:00:10.648605 CPUM: Matched host CPU INTEL 0x6/0xb7/0x1 Intel_Atom_Unknown with CPU DB entry 'Intel Pentium N3530 2.16GHz' (INTEL 0x6/0x37/0x8 Intel_Atom_Silvermont)
00:00:10.648621 CPUM: MXCSR_MASK=0xffff (host: 0xffff)
00:00:10.648631 CPUM: Microcode revision 0x00000113
00:00:10.648642 CPUM: MSR/CPUID reconciliation insert: 0x0000010b IA32_FLUSH_CMD
00:00:10.648645 CPUM: MSR/CPUID reconciliation insert: 0x0000010a IA32_ARCH_CAPABILITIES
00:00:10.648648 CPUM: MSR fudge: 0x00000001 IA32_P5_MC_TYPE
00:00:10.648651 CPUM: MSR fudge: 0x00000017 IA32_PLATFORM_ID
00:00:10.648653 CPUM: MSR fudge: 0x0000001b IA32_APIC_BASE
00:00:10.648656 CPUM: MSR fudge: 0x0000008b BIOS_SIGN
00:00:10.648658 CPUM: MSR fudge: 0x000000fe IA32_MTRRCAP
00:00:10.648661 CPUM: MSR fudge: 0x00000179 IA32_MCG_CAP
00:00:10.648664 CPUM: MSR fudge: 0x0000017a IA32_MCG_STATUS
00:00:10.648666 CPUM: MSR fudge: 0x000001a0 IA32_MISC_ENABLE
00:00:10.648669 CPUM: MSR fudge: 0x000001d9 IA32_DEBUGCTL
00:00:10.648671 CPUM: MSR fudge: 0x000001db P6_LAST_BRANCH_FROM_IP
00:00:10.648674 CPUM: MSR fudge: 0x000001dc P6_LAST_BRANCH_TO_IP
00:00:10.648676 CPUM: MSR fudge: 0x000001dd P6_LAST_INT_FROM_IP
00:00:10.648679 CPUM: MSR fudge: 0x000001de P6_LAST_INT_TO_IP
00:00:10.648682 CPUM: MSR fudge: 0x00000277 IA32_PAT
00:00:10.648686 CPUM: MSR fudge: 0x000002ff IA32_MTRR_DEF_TYPE
00:00:10.648688 CPUM: MSR fudge: 0x00000400 IA32_MCi_CTL_STATUS_ADDR_MISC
00:00:10.648691 CPUM: MSR fudge: 0xc0000103 AMD64_TSC_AUX
00:00:10.648694 CPUM: MSR fudge: 0x00000122 IA32_TSX_CTRL
00:00:10.648700 CPUM: SetGuestCpuIdFeature: Enabled SYSENTER/EXIT
00:00:10.648703 CPUM: SetGuestCpuIdFeature: Enabled SYSCALL/RET
00:00:10.648706 CPUM: SetGuestCpuIdFeature: Enabled PAE
00:00:10.648709 CPUM: SetGuestCpuIdFeature: Enabled LAHF/SAHF
00:00:10.648711 CPUM: SetGuestCpuIdFeature: Enabled NX
00:00:10.648714 CPUM: SetGuestCpuIdFeature: Enabled LONG MODE
00:00:10.653516 NEM: HvPartitionPropertyProcessorVendor=0x1 (1)
00:00:10.660673 NEM: Successfully set up partition (device handle 00000000000012a5, partition ID 0x0)