Patents by Inventor Teodor Madan

Teodor Madan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9652401
    Abstract: A tagged cache is disclosed for data coherency in multi-domain debug operations. Access requests to a memory within a target device are received for data views associated with debug operations, and access requests include virtual addresses associated with virtual address spaces and client identifiers associated with requesting data views. Virtual addresses are translated to physical addresses within a tagged cache using address translation tables that associate virtual addresses from the different virtual address spaces with client identifiers and with physical addresses within the cache. Data within the cache is cached using the physical addresses. Further, when data is written to the cache, virtual address tags within the cache are used to identify if other virtual addresses are associated with the physical address for the write access request. If so, client identifiers stored within the address translation tables are used to notify affected data views of changed data.
    Type: Grant
    Filed: October 23, 2015
    Date of Patent: May 16, 2017
    Assignee: NXP USA, Inc.
    Inventors: Dorin Florian Ciuca, Teodor Madan, Adrian-George Stan
  • Patent number: 9639343
    Abstract: A method for altering execution of a program on a computer. The program resides in a memory unit that has a logical address space assigned thereto. The method comprises: operating the computer to start executing the program; operating the computer to suspend execution of the program; selecting a patch insertion address within a logical address range of the program, saving the original code residing at the patch insertion address; generating a patch routine; writing a jump instruction to the patch insertion address, thus overwriting said original code, wherein the jump instruction is arranged to instruct the computer to jump to a start address of the patch routine; and operating the computer to resume execution of the program. The patch routine is arranged to prompt the computer to: save a current context of the program; execute a user code; restore the saved context of the program; and execute a surrogate code.
    Type: Grant
    Filed: October 30, 2014
    Date of Patent: May 2, 2017
    Assignee: NXP USA, INC.
    Inventors: Mihail-Marian Nistor, Teodor Madan, Dragos Miloiu
  • Patent number: 9582397
    Abstract: A method of obtaining run-time information associated with executing an executable is described. The method comprises receiving an external database comprising one or more external debugging information entries, retrieving the one or more external debugging information entries from the external database and storing the one or more external debugging information entries retrieved from the external database in a debugging information entries collection. The method further comprises providing the debugging information entries collection to a debugging information consumer, and obtaining the run-time information from letting the debugging information consumer retrieve run-time values and format the run-time values according to the external debugging information entries in the debugging information entries collection.
    Type: Grant
    Filed: August 22, 2012
    Date of Patent: February 28, 2017
    Assignee: NXP USA, INC.
    Inventors: Valentin Ciocoi, Teodor Madan, Mihail Nistor
  • Publication number: 20170046271
    Abstract: A tagged cache is disclosed for data coherency in multi-domain debug operations. Access requests to a memory within a target device are received for data views associated with debug operations, and access requests include virtual addresses associated with virtual address spaces and client identifiers associated with requesting data views. Virtual addresses are translated to physical addresses within a tagged cache using address translation tables that associate virtual addresses from the different virtual address spaces with client identifiers and with physical addresses within the cache. Data within the cache is cached using the physical addresses. Further, when data is written to the cache, virtual address tags within the cache are used to identify if other virtual addresses are associated with the physical address for the write access request. If so, client identifiers stored within the address translation tables are used to notify affected data views of changed data.
    Type: Application
    Filed: October 23, 2015
    Publication date: February 16, 2017
    Inventors: Dorin Florian Ciuca, Teodor Madan, Adrian-George Stan
  • Publication number: 20160062875
    Abstract: A method for altering execution of a program on a computer. The program resides in a memory unit that has a logical address space assigned thereto. The method comprises: operating the computer to start executing the program; operating the computer to suspend execution of the program; selecting a patch insertion address within a logical address range of the program, saving the original code residing at the patch insertion address; generating a patch routine; writing a jump instruction to the patch insertion address, thus overwriting said original code, wherein the jump instruction is arranged to instruct the computer to jump to a start address of the patch routine; and operating the computer to resume execution of the program. The patch routine is arranged to prompt the computer to: save a current context of the program; execute a user code; restore the saved context of the program; and execute a surrogate code.
    Type: Application
    Filed: October 30, 2014
    Publication date: March 3, 2016
    Inventors: MIHAIL-MARIAN NISTOR, TEODOR MADAN, DRAGOS MILOIU
  • Publication number: 20150242301
    Abstract: A method of obtaining run-time information associated with executing an executable is described. The method comprises receiving an external database comprising one or more external debugging information entries, retrieving the one or more external debugging information entries from the external database and storing the one or more external debugging information entries retrieved from the external database in a debugging information entries collection. The method further comprises providing the debugging information entries collection to a debugging information consumer, and obtaining the run-time information from letting the debugging information consumer retrieve run-time values and format the run-time values according to the external debugging information entries in the debugging information entries collection.
    Type: Application
    Filed: August 22, 2012
    Publication date: August 27, 2015
    Applicant: Freescale Semiconductor, Inc.
    Inventors: Valentin Ciocoi, Teodor Madan, Mihail Nistor